質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.50%

  • PHP

    24080questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • HTML

    11519questions

    HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

  • WordPress

    8947questions

    WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

wordpress記事のレイアウトが崩れた場合の対処法

解決済

回答 3

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 1,992

hirororo

score 54

はじめまして!

以前、こちらのサイトで質問させていただいてから
実装したいプログラムを完成させることができました。

Wordpress記事数をユーザー登録を行った日から 経過した日数に応じて可変させたい

取り組んでるうちに1つ問題が発生したため、質問させてください。

先日、Wordpress記事を古い順番で、
ユーザー登録を行った日から経過した日数に応じて表示させるというプログラムを作成したのですが、
プログラムは機能するものの、記事のレイアウトが崩れてしまいました。

イメージ説明

以下がトップページの元のソースと今のソースの一部になります。
(こちらのソース以外、追加変更はしておりません)

■元のソース

<div id="recent_post_content" class="front-loop">

<h2><i class="fa fa-clock-o"></i> 最近の投稿</h2>
<div class="wrap">
<div class="front-loop-cont">
<?php
$i = 1;
wp_reset_query();

$args=array(
'meta_query'=>
array(
array( 'key'=>'bzb_show_toppage_flag',
'compare' => 'NOT EXISTS'
),
array( 'key'=>'bzb_show_toppage_flag',
'value'=>'none',
'compare'=>'!='
),
'relation'=>'OR'
),
'showposts'=>5,
'order'=>'DESC'
);

query_posts($args);

if ( have_posts() ) :
while ( have_posts() ) : the_post();

$cf = get_post_meta($post->ID);
$recent_class = 'popular_post_box recent-'.$i;
?>

■変更後のソース

<div id="popular_post_content" class="front-loop">

<h2><i class="fa fa-clock-o"></i> 最近の投稿</h2>
<div class="wrap">
<div class="front-loop-cont">
<?php
$i = 1;
wp_reset_query();

$current_user = wp_get_current_user();

$time1 = strtotime($current_user->user_registered);

$time2 = strtotime(date('Y/m/d H:i:s'));

$seconddiff = abs($time2 - $time1);

$diff = $seconddiff / (60*60*24);

$daydiff = floor($diff) *2;


//query_posts('order=ASC&cat=11&posts_per_page.=$daydiff');


$args=array(
'meta_query'=>
array(
array( 'key'=>'bzb_show_toppage_flag',
'compare' => 'NOT EXISTS'
),
array( 'key'=>'bzb_show_toppage_flag',
'value'=>'none',
'compare'=>'!='
),
'relation'=>'OR'
),
'showposts'=>$daydiff,
'order'=>'ASC'
);

query_posts($args);

if ( have_posts() ) :
while ( have_posts() ) : the_post();



$cf = get_post_meta($post->ID);
$recent_class = 'popular_post_box recent-'.$i;
?>

トップページのレイアウトが崩れてしまう原因を調べるために元のソースと今のソースを比べてみました。

比べてみて分かったのは、以下の2箇所に違いがあるということでした。

■違い1

ソースが書き加えられている。

$current_user = wp_get_current_user();
$time1 = strtotime($current_user->user_registered);
$time2 = strtotime(date('Y/m/d H:i:s'));
$seconddiff = abs($time2 - $time1);
$diff = $seconddiff / (60*60*24);
$daydiff = floor($diff) *2;
//query_posts('order=ASC&cat=11&posts_per_page.=$daydiff');

■違い2

ソースが書き換えられている。

'showposts'=>5,    'showposts'=>$daydiff,
'order'=>'DESC'

      ↓変更後

'showposts'=>$daydiff,
'order'=>'DESC'    'order'=>'ASC'

比べる際にこちらのサイトがとても便利でした。

http://difff.jp/

何度か試してみたのですが、原因が分からずに行き詰まっております。

度々ですが、ご教授して頂ければ幸いです。

よろしくお願いいたします。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • kogure

    2016/05/30 11:03

    こんにちは。
    実際にどのように崩れているのかスクショなり追加いただけると助かります。

    キャンセル

  • hirororo

    2016/05/31 18:59 編集

    記事タイトルの文字数を減らすことで、無事レイアウトが綺麗に整いました。

    レイアウトが崩れていた時のスクショを追加させていただきます。

    キャンセル

回答 3

checkベストアンサー

+1

掲示されているのがページのソース全てというのであれば、</div> が多いです。HTMLの崩れを直す場合は、出力されたHTMLのソースを確認し、開始タグと終了タグの数と入れ子構造が正しいかを確認するところからはじめると良いです。また、""などの過不足もエラーの原因になりますので、それらも含めて確認されてはいかがでしょうか。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/05/29 01:50 編集

    お世話になっております。

    質問ページのソースはトップページのソース全てになります。

    ご指摘いただいたとおり、divの数を確認して減らしました。

    ・ダブルクオーテーション、シングルクォーテーション
    ・半角、全角

    のチェックも試してみましたがページに変化はありませんでした。


    ■変更後

    </div><!-- /front-loop-cont -->

    </div><!-- /wrap -->
    </div><!-- /recent_post_content -->

    ■変更前

    </div><!-- /front-loop-cont -->

    </div><!-- /wrap -->
    </div><!-- popular_post_content -->


    </div><!-- /front-root-cont -->

    </div><!-- /wrap -->
    </div><!-- /recent_post_content -->


    変更後のソースに問題はありますでしょうか?

    今は、プログラムを実装するために
    書き加えたコードに問題があるとして調べていています。

    度々ですが、ご教授よろしくお願いいたします。

    キャンセル

  • 2016/05/29 02:25 編集

    出力されたソース(PHPのソースではない)を確認されていますか?それを確認したうえでレイアウトの崩れていないページが有るならそこと比較するのも有効です。

    キャンセル

  • 2016/05/30 03:47 編集

    お世話になっております。

    アドバイスを元に、レイアウトが崩れる前の『元のソース』と追加変更を加えた『今のソース』のを質問欄に加えさせていただきました。

    ご確認、ご教授頂けると幸いです。

    よろしくお願いいたします。

    キャンセル

  • 2016/05/30 10:52

    「出力されたソース」の意味をわかっておられない。崩れたページと問題ないページで、右クリックして「ページのソースを表示」をしたらどうです?と書いたつもりです。

    キャンセル

  • 2016/05/30 19:31 編集

    出力されたソースを調べてみることをアドバイスして頂いたいたことに今気付きました。

    初心者で理解に及ばす申し訳ありませんm(_ _)m

    早速調べてみたいと思います。

    ありがとうございます。

    キャンセル

  • 2016/05/31 18:50

    お世話になっております。

    記事タイトルの文字数を減らすことで、無事レイアウトが綺麗に整いました!

    ただ、応急処置になってしまってるのでデベロッパーツールのから編集を勉強して、
    根本的な解決に取り組みたいと思います。

    アドバイスありがとうございます!

    キャンセル

  • 2016/05/31 19:06

    まだ質問が「受付中」になっていますが、いったんご自身で解決した方法を回答に書き、その回答をベストアンサーに選び、「解決済」にされてはいかがでしょうか。

    キャンセル

+1

kei344 さんの回答で、html が正しく出力されるようになった前提ですが、あとは style の問題なので、chrome の開発ツール等で style を変更してやり、必要な修正箇所を見つければよいです。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/05/30 03:42 編集

    アドバイスありがとうございます!

    初心者でCSSファイルを触るまで至っておらず、プログラムを実装するためにトップページのphpファイル内にプログラムを加えたため、やはりphpファイル内に原因があると思っております。


    質問を書き換えましたので、ご確認、ご教授頂けると幸いです。

    よろしくお願いいたします。

    キャンセル

  • 2016/05/30 09:17

    そうですか。がんばってください。

    キャンセル

  • 2016/05/30 19:27 編集

    ありがとうございます。

    ページのソースを確認することをアドバイスして頂いたことに今気付きました。

    CSSを調べてみたいと思います。

    頂いたアドバイスをしっかり理解できてなくて申し訳ありません。

    キャンセル

  • 2016/05/31 18:49 編集

    CSSの問題というアドバイスをヒントに、
    記事タイトルの文字数を減らすことで、無事レイアウトが綺麗に整いました!

    ただ、文字数を減らすことでレイアウトは整いましたが、応急処置になってしまってるので
    CSSとデベロッパーツールからの編集を一から勉強して、根本的な解決に取り組みたいと思います。

    ありがとうございます!

    キャンセル

-1

記事タイトルの文字数を減らすことで、無事レイアウトが綺麗に整いました!

ただ、文字数を減らすことでレイアウトは整いましたが、応急処置になってしまってるので
CSSとGTMLをデベロッパーツールから編集して、根本的な解決に取り組みたいと思います。

ありがとうございます。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

同じタグがついた質問を見る

  • PHP

    24080questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • HTML

    11519questions

    HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

  • WordPress

    8947questions

    WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。