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

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

ただいまの
回答率

89.20%

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

解決済

回答 3

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 2,635

hirororo

score 60

はじめまして!

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

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/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をデベロッパーツールから編集して、根本的な解決に取り組みたいと思います。

ありがとうございます。

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

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

  • ただいまの回答率 89.20%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる