はじめまして!
以前、こちらのサイトで質問させていただいてから
実装したいプログラムを完成させることができました。
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ページの「アクティブ」「注目」タブのフィードに表示されにくくなります。
質問の評価を下げたことを取り消します
この機能は開放されていません
評価を下げる条件を満たしてません
質問の評価を下げる機能の利用条件
この機能を利用するためには、以下の事項を行う必要があります。
- 質問回答など一定の行動
-
メールアドレスの認証
メールアドレスの認証
-
質問評価に関するヘルプページの閲覧
質問評価に関するヘルプページの閲覧
checkベストアンサー
+1
掲示されているのがページのソース全てというのであれば、</div>
が多いです。HTMLの崩れを直す場合は、出力されたHTMLのソースを確認し、開始タグと終了タグの数と入れ子構造が正しいかを確認するところからはじめると良いです。また、""
などの過不足もエラーの原因になりますので、それらも含めて確認されてはいかがでしょうか。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
+1
kei344 さんの回答で、html が正しく出力されるようになった前提ですが、あとは style の問題なので、chrome の開発ツール等で style を変更してやり、必要な修正箇所を見つければよいです。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
-1
記事タイトルの文字数を減らすことで、無事レイアウトが綺麗に整いました!
ただ、文字数を減らすことでレイアウトは整いましたが、応急処置になってしまってるので
CSSとGTMLをデベロッパーツールから編集して、根本的な解決に取り組みたいと思います。
ありがとうございます。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
15分調べてもわからないことは、teratailで質問しよう!
- ただいまの回答率 88.38%
- 質問をまとめることで、思考を整理して素早く解決
- テンプレート機能で、簡単に質問をまとめられる
質問への追記・修正、ベストアンサー選択の依頼
kogure
2016/05/30 11:03
こんにちは。
実際にどのように崩れているのかスクショなり追加いただけると助かります。
hirororo
2016/05/31 18:59 編集
記事タイトルの文字数を減らすことで、無事レイアウトが綺麗に整いました。
レイアウトが崩れていた時のスクショを追加させていただきます。