20以上の最も望まれるWordPressループハック

公開: 2017-12-20

ループはWordPressのメインプロセスであるため、ほとんどすべてのテーマファイルにあります。 基本的に、これは、テーマのテンプレートファイルを介して投稿を表示するためにプラットフォームで使用されるPHPコードです。 言い換えれば、それは巨大です。 実際、サイトはループなしでは機能しないため、これは非常に重要です。

この信じられないほど強力な機能のセットを微調整すると、WordPressサイトの機能が向上する可能性があります。 たとえば、ホームページでの投稿の表示方法を変更し、特定のパラメータを使用して投稿を並べ替えることができます。 ループを変更するのが最も簡単なことを考えると、かなり印象的で創造的なハックを得ることができます。

プラグインをインストールせずに、今すぐ使用する必要のある20以上のループハックを紹介しましょう。

#1。 最初の投稿の後に広告を配置する

ブロガーとして、あなたは広告がお金を稼ぐための最良の方法の1つであることをよく知っています。 訪問者からこれらの非常に必要なクリックを取得することは確かにトリッキーなことであり、多くのブロガーは高いクリック率を楽しんでいません。 最初の投稿の後に広告を配置すると、広告を増やすのに良い方法になる可能性があるため、この簡単な調整を試してください。

ループを次のループに置き換えます。 広告のコードをそこに貼り付ける必要があるため、注意してください。

[php]
<?php if(have_posts()):?>
<?php $ count = 0; ?>
<?php while(have_posts()):the_post(); ?>
<?php $ count ++; ?>
<?php if($ count == 2):?>
//この行に広告のコードを挿入します
<h2> <a href="<?php the_permalink().?> "> <?php the_title(); ?> </a> </ h2>
<?php the_excerpt(); ?>
<?php else:?>
<h2> <a href="<?php the_permalink().?> "> <?php the_title(); ?> </a> </ h2>
<?php the_excerpt(); ?>
<?php endif; ?>
<?php endwhile; ?>
<?php endif; ?>
[/ php]

#2。 古いが人気のある1年前の投稿を表示する

Most Wanted WordPress Loop Hacks

ブログの投稿の一部は、1年前に作成されたものですが、それでも読者の間で人気がある可能性があります。 たとえば、ハウツー記事やその他の種類の常緑樹のコンテンツである可能性があります。 これらの投稿の人気を維持するために、この便利なハックを適用できます。

このコードをsingle.phpファイルに挿入します。

[php]
<?php
$ current_day = date( 'j');
$ last_year = date( 'Y')-1;
query_posts( 'day ='。$ current_day。 '&year ='。$ last_year);
if(have_posts()):
while(have_posts()):the_post();
タイトル();
the_excerpt();
終わり;
endif;
?>
[/ php]

#3。 ループ内の5つの最新のスティッキー投稿を表示する

Most Wanted WordPress Loop Hacks

デフォルトの機能では、1つの投稿をフロントページに貼り付けることができます。 以下のハックは、5つのスティッキーポストを配置します。

多くのブロガーは、エントリを他のエントリの上に表示できるため、スティッキー投稿を注目の投稿と見なします。 独自の「編集者のおすすめ」カテゴリを作成したい場合は、そのためのハックがあります。 以下のコードを機能させるには、テーマの任意の場所に挿入する必要があります。 4行目の番号を置き換えることで、投稿数を変更して投稿数を減らすこともできます。

[php]
<?php
$ sticky = get_option( 'sticky_posts');
rsort($ sticky);
$ sticky = array_slice($ sticky、0、5);
query_posts(array( 'post__in' => $ sticky、 'caller_get_posts' => 1));

if(have_posts()):
while(have_posts()):the_post();
タイトル();
the_excerpt();
終わり;
endif;

?>
[/ php]

#4。 特定のカテゴリの投稿を一覧表示する

以下のハックで同じカテゴリの投稿を区別します。

何らかの理由で同じカテゴリを共有する投稿を区別する必要がある場合(たとえば、エッセイライター向けのハウツー記事)、次のコードをループファイルに挿入します。

[php]
<?php foreach((get_the_category())as $ category){
$ thecat = $ category-> cat_ID。 '';
query_posts( 'child_of ='。$ thecat);
if(have_posts()):while(have_posts()):the_post();
//クラシックWPループ
endwhile; endif;
?>
[/ php]

#5。 将来の投稿のリストを提供する

Most Wanted WordPress Loop Hacks

今後の投稿について読者に知らせることで、読者の興味をかき立て、ブログに戻って読んでもらうことができます。 これがあなたにとって素晴らしいアイデアのように思える場合は、以下のコードを使用して、WordPressサイトの今後の投稿の短いリストを提供してください。

[php]
<?php query_posts( 'showposts = 10&post_status = future'); ?>
<?php if(have_posts()):while(have_posts()):the_post(); ?>
<h2> <?php the_title(); ?> </ h2>
<span class = "datetime"> <?php the_time( 'j。FY'); ?> </ span> </ p>
<?php endwhile;
それ以外の場合:?> <p>今後のイベントは予定されていません。</ p>
<?php endif; ?>
[/ php]

#6。 特定の日にアップロードされた投稿を取得する

Most Wanted WordPress Loop Hacks

フィード内の投稿を見つけるのに苦労することが多い場合は、ループを使用してそれらを検索できます。 以下のコードを挿入することで、検索がとても簡単になります。 具体的には、自分で指定した2つの日付の間に投稿されたエントリを取得します。

[php]
<?php
function filter_where($ where =”){
$ where。= "AND post_date> = '2012-08-19' AND post_date <= '2012-08-11'";
$ whereを返します。
}
add_filter( 'posts_where'、 'filter_where');
query_posts($ query_string);
while(have_posts()):
ポスト();
コンテンツ();
終わり;

?>
[/ php]

#7。 画像のループを表示する

ほとんどの人がビジュアルを高く評価しているので、WordPressWebサイトの開始ページにある画像のギャラリーは良い考えです。 投稿にリード画像が含まれている場合、以下のコードはそれらを取得してループで紹介します。

次のコードをfunctions.phpファイルに挿入します。

[php]
function catch_that_image(){
グローバル$ post、$ post;
$ first_img =”;
ob_start();
ob_end_clean();
$ output = preg_match_all( '/ <img。+ src = [' "]([^ '"] +)[' "]。*> / i '、$ post-> post_content、$ matches);
$ first_img = $ matches [1] [0];

if(empty($ first_img)){//デフォルトの画像を決定します
$ first_img = "/images/default.jpg";
}
$ first_imgを返します;
}
[/ php]

#8。 有効期限を設定して投稿を自動的に削除する

ブログの読者数を増やすためにコンテストを実行しているとします。 コンテストが終了したら、結果を公開します。最も重要なのは、回答またはヒント、およびそれらの手がかりを公開することです。 もちろん、将来別のコンテストを実行する可能性があるため、読者が永久にアクセスできるようにするべきではありませんよね?

投稿を忘れた場合でも削除する良い方法は、有効期限を設定して投稿をスケジュールすることです。 以下のループは、既存のループを置き換えて、まさにそれを実行します。

有効期限の代わりにmm / dd / yyyy00:00:00形式を使用することを忘れないでください。

[php]
<?php
if(have_posts()):
while(have_posts()):the_post(); ?>
$ Expirationtime = get_post_custom_values( 'expiration');
if(is_array($ Expirationtime)){
$ Expirestring = implode($ Expirationtime);
}

$ secondsbetween = strtotime($ Expirestring)-time();
if($ secondsbetween> 0){
// 例えば…
タイトル();
the_excerpt();
}
終わり;
endif;
?>
[/ php]

#9。 トラックバックからコメントを分離する

Most Wanted WordPress Loop Hacks

あなたのブログの人気のあるエントリは、他の多くのサイトからリンクされます。 読者がコメントセクションのディスカッションを快適にフォローできるようにするには、コメントとトラックバックを分ける必要があります。

あなたがしなければならないのはcomments.phpを開いて、以下を探すことです:

[php]
foreach($ comment as $ comment):?>
//コメントはここに表示されます
endforeach;
[/ php]

それを見つけた? これで、新しいコードに置き換えてください。

[php]
<ul class = "commentlist">
<?php //コメントのみを表示
foreach($ comment as $ comment):?>
<?php $ comment_type = get_comment_type(); ?>
<?php if($ comment_type == 'コメント'){?>
<li> //コメントコードはここにあります</ li>
<?php}
endforeach;
</ ul>

<ul>
<?php //トラックバックのみを表示
foreach($ comment as $ comment):?>
<?php $ comment_type = get_comment_type(); ?>
<?php if($ comment_type!= 'comment'){?>
<li> <?php comment_author_link()?> </ li>
<?php}
endforeach;

</ ul>
[/ php]

#10。 関連記事を表示

Most Wanted WordPress Loop Hacks

関連する投稿を表示することは、読者を増やす良い方法です。 それを達成するためにあなたがしなければならないのは、single.phpファイルに特別なコードを貼り付けることです。

[php]
<?php
$ backup = $ post; //現在のオブジェクトをバックアップします
$ tags = ks29so_get_post_tags($ post-> ID);
$ tagIDs = array();
if($ tags){
$ tagcount = count($ tags);
for($ i = 0; $ i <$ tagcount; $ i ++){
$ tagIDs [$ i] = $ tags [$ i]-> term_id;
}
$ args = array(
'tag__in' => $ tagIDs、
'post__not_in' => array($ post-> ID)、
'showposts' => 5、
'caller_get_posts' => 1
);
$ my_query = new WP_Query($ args);
if($ my_query-> have_posts()){
while($ my_query-> have_posts()):$ my_query-> the_post(); ?>
<h3> <a href = "<?php the_permalink()?> "rel =" bookmark "title =" <?php the_title();?> "> <?php the_title(); ?> </a> </ h3>
<?php endwhile;
} else {?>
<h2>関連する投稿が見つかりません!</ h2>
<?php}
}
$ post = $ backup; //コピーして戻します
ks29so_reset_query(); //元のクエリを再度使用するには
?>
[/ php]

#11。 特定の投稿がホームページにどのように表示されるかを決定する

Most Wanted WordPress Loop Hacks

WordPressテーマの大部分は、開始ページにすべての投稿を同じように表示します。 ただし、気に入らない場合は、変更して、完全に表示する必要があるものと、抜粋だけで十分なものを定義できます。

index.phpファイルを見つけて、そこでループを探します。 次のコードがそれを置き換えます。

[php]
<?php if(have_posts()):
while(have_posts()):the_post();
$ customField = get_post_custom_values( "full");
if(isset($ customField [0])){
//カスタムフィールドが設定され、投稿全体が表示されます
タイトル();
コンテンツ();
} そうしないと {
//カスタムフィールドが設定されていません。抜粋を表示できます
タイトル();
the_excerpt();
終わり;
endif;
?>
[/ php]

#12。 ホームページの投稿の上にプロモーションコンテンツを表示する

次のコードをindex.phpファイルに挿入して、プロモーションコンテンツを追加します。

[php]
<div class = "content-loop">
[/ php]

#13。 ブログのすべての作成者をページに一覧表示します

Most Wanted WordPress Loop Hacks

このコードをループのどこかに貼り付けるだけで、すべての作成者のリストが表示されます。

[php]
<ul>
<?php ks29so_list_authors( 'exclude_admin = 0&optioncount = 1&show_fullname = 1&hide_empty = 1'); ?>
</ ul>
[/ php]

#14。 カスタムフィールドを使用してゲスト作成者の名前を表示する

ブログでゲスト作成者を使用している場合は、ゲスト作成者用に別のページを作成しない可能性が非常に高くなります。 代わりに名前だけを表示しないのはなぜですか?

これを行うには、このコードをsingle.phpに挿入します。

[php]
<?php $ author = get_post_meta($ post-> ID、 "guest-author"、true);
if($ author!= ""){
エコー$ author;
} そうしないと {
著者();
}?>
[/ php]

#15。 画像を公開するための必須要件にする

画像付きの投稿は、画像なしの投稿よりも多くのビューを楽しむことがよくあります。 関数.phpファイルを開いて必須にします。

[php]
add_action( 'save_post'、 'wpds_check_thumbnail');
add_action( 'admin_notices'、 'wpds_thumbnail_error');

関数wpds_check_thumbnail($ post_id){
//任意のカスタム投稿タイプに変更します
if(get_post_type($ post_id)!= 'post')
戻る;

if(!has_post_thumbnail($ post_id)){
//ユーザーに管理メッセージを表示するようにトランジェントを設定します
set_transient( "has_post_thumbnail"、 "no");
//この関数のフックを解除して、無限にループしないようにします
remove_action( 'save_post'、 'wpds_check_thumbnail');
//投稿を更新してドラフトに設定
ks29so_update_post(array( 'ID' => $ post_id、 'post_status' => 'draft'));

add_action( 'save_post'、 'wpds_check_thumbnail');
} そうしないと {
delete_transient( "has_post_thumbnail");
}
}

関数wpds_thumbnail_error(){
//トランジェントが設定されているかどうかを確認し、エラーメッセージを表示します
if(get_transient( "has_post_thumbnail")== "no"){
echo "<div id = 'message' class = 'error'> <p> <strong>これを公開する前に、注目の画像を追加する必要があります。慌てる必要はありません。投稿は保存されます。</ strong> </ p> < / div> ";
delete_transient( "has_post_thumbnail");
}
}
[/ php]

#16。 登録後に特定のページにリダイレクトする

関数.phpファイルを開き、以下のコードを追加します。

[php]
関数__my_registration_redirect(){
return home_url( '/ my-page');
}
add_filter( 'registration_redirect'、 '__ my_registration_redirect');

#17。 投稿に広告を挿入
このコードをfunctions.phpファイルで使用して、任意の場所の投稿に広告をラップします。
ハック
関数googleadsense($ content){
$ adsensecode = 'ここにあなたの広告コード';
$ pattern = '<!-googlead->';
$ content = str_replace($ pattern、$ adsensecode、$ content);
$ contentを返します。
}
add_filter( 'the_content'、 'googleadsense');
[/ php]

#18。 ショートコードを使用して広告を表示する

広告を挿入する場所を選択し、次のコードをfunctions.phpに貼り付けます。

[php]
関数showads(){
戻る '
ここに広告のコード
';
}
add_shortcode( 'adsense'、 'showads');
[/ php]

#19。 コメントの多い投稿を表示する

Most Wanted WordPress Loop Hacks

次のコードをfunctions.phpファイルに追加して、コメントが最も多い投稿を表示します。

[php]
関数wpb_most_commented_posts(){
ob_start();?>
<ul class = "most-commented">
<?php
$ query = new
WP_Query( 'orderby = comment_count&posts_per_page = 10');
while($ query-> have_posts()):$ query-> the_post(); ?>
<li> <a href = "<?php the_permalink();?> "title =" <?php the_title();?> "> <?php the_title(); ?> </a> <span class = "wpb-comment-count"> <?phpcomments_popup_link( 'コメントなし;'、 '1コメント'、 '%コメント'); ?> </ span> </ li>
<?php endwhile; ?>
</ ul>
<?php //出力バッファリングをオフにします
$ output = ob_get_clean();
$ outputを返します。 }
add_shortcode( 'wpb_most_commented'、 'wpb_most_commented_posts');
add_filter( 'widget_text'、 'do_shortcode');
[/ php]

#20。 注目の画像サポートを有効にする

WordPressテーマの大部分は注目の画像をサポートしていますが、サポートしていない場合は、functions.phpファイルに挿入することで有効にできます。

[php]
add_theme_support( 'サムネイル後');
[/ php]

#21。 最新のコメントを表示

Most Wanted WordPress Loop Hacks

このコードをループ内の任意の場所で使用して、5つの最新のコメントを表示します。

[php]
<?php
$ query = "SELECT * from $ wpdb-> comments WHERE comment_authorized = '1'
ORDER BY comment_date DESC LIMIT 0,5 ";
$ comments = $ wpdb-> get_results($ query);
if($ comments){
エコー '<ul>';
foreach($ commentsを$ commentとして){
$ url = '<a href = "'。get_permalink($ comment-> comment_post_ID)。'#comment-'。$ comment-> comment_ID。' "title =" '。$ comment-> comment_author。' | '.get_the_title($ comment-> comment_post_ID)。' "> ';
エコー '<li>';
エコー '<div class = "img">';
エコー$ url;
echo get_avatar($ comment-> comment_author_email、$ img_w);
エコー '</a> </ div>';
echo '<divclass = "txt">パー:';
エコー$ url;
echo $ comment-> comment_author;
エコー '</a> </ div>';
エコー '</ li>';
}
エコー '</ ul>';
}
?>
[/ php]

ハッキングする準備はできましたか?

これらの便利な調整を使用して、WordPressサイトの機能を強化してください!