仙台・宮城の皆さんこんにちは! WordPressサイトのカスタマイズを進めているとき、何気なく目にするwp_footer()。でも、「これって一体何?」と思ったことはありませんか?wp_footer()は、サイトのパフォーマンスやプラグインの動作において非常に重要な役割を担っています。今回は、この関数がどんな働きをしているのか、そしてなぜ欠かせないのかをわかりやすく解説します! wp_footer()は見えない魔法のようなもの wp_footer()は、サイトの一番下にスクリプトを追加するための「魔法のような」関数です。これがあるおかげで、プラグインや外部スクリプトがページに必要なコードを追加できます。例えば、Google Analyticsやチャットウィジェットなどをサイトに設置しても、wp_footer()がなければ正しく機能しないことが多いのです。 wp_footer()は隠れた縁の下の力持ち WordPressサイトの多くの機能は、見えないところでwp_footer()が支えています。ページの下部に配置されるこの関数は、サイト全体の動作や追加機能を支えるための重要なパーツです。見た目には直接影響しないものの、この関数があることで、ページの表示速度やプラグインの動作が最適化され、サイトがスムーズに動きます。具体的な役割を見てみましょう。 サイトのスピードを保つ wp_footer()は、JavaScriptファイルなどをページの最後に追加します。これにより、ページ全体の表示速度が速くなるメリットがあります。ページの表示が速いと、訪問者の離脱率が低下し、SEOにも良い影響を与えます。 プラグインをスムーズに動かす 「なんだかプラグインが正しく動かない…」というトラブルを経験したことがある方も多いはずです。そんなとき、このwp_footer()がないことが原因だった、というケースもよくあります。プラグインはこの関数を利用して必要なスクリプトを読み込むため、動作を保証するためにも不可欠です。 便利な機能をサポート 例えば、ページ下部に表示されるライブチャット機能やクーポンコードのポップアップなど、ユーザーエクスペリエンスを向上させる要素もwp_footer()によって支えられています。これがないと、こういった便利な機能が正しく表示されず、サイトの魅力やユーザーの利便性が損なわれることがあります。 wp_footer()をテーマに組み込む方法 テーマを自作したり、カスタマイズを行う際は、footer.phpファイルにwp_footer()を必ず含めることが重要です。このコードがないと、ページの最後に必要なスクリプトが適切に挿入されず、プラグインやカスタム機能が正常に動作しないことがあります。特に、外部スクリプトや解析ツールを使っている場合は、これがないとサイトが十分に機能しない原因となることもあります。忘れずにこのコードを追加して、サイトのパフォーマンスを最大限に引き出しましょう。 <?php wp_footer(); ?> </body> </html> この一行を入れておくことで、WordPressはページの下部に必要なスクリプトやコードを自動的に追加されます。 wp_footer()がないとどうなる? プラグインが動かない? wp_footer()がテーマに含まれていないと、プラグインが必要とするスクリプトを読み込めず、正常に動作しないことがあります。その結果、「サイトがなぜか思うように機能しない」といった問題に直面することがあります。これが原因で、特定の機能が表示されなかったり、動かなくなったりすることもあるのです。 トラッキングが無効化される wp_footer()がないと、Google Analyticsなどの解析ツールが正しく動作せず、サイトの訪問データが取得できなくなることがあります。これにより、重要なアクセス情報が失われてしまい、ユーザーの行動を把握して改善に活かす機会を逃してしまうことになります。サイト運営者にとって、これは大きな損失です。 まとめ wp_footer()は、WordPressテーマのフッター部分で重要な役割を果たす関数です。この関数をテーマにしっかりと含めておくことで、プラグインやカスタムスクリプトが正常に動作し、サイト全体のパフォーマンスやSEOにも良い影響を与えます。初心者はまず、この関数の役割を理解し、自作テーマやカスタムテーマを編集するときにはwp_footer()を忘れずに追加するようにしましょう。 それではまた!仙台・宮城でのホームページ制作やサイトリニューアルならアンドシークまで!もちろん宮城県外の方も大歓迎です!
WordPressのwp_footer()は何のためにあるの?基礎的な疑問をわかりやすく解説!
WordPressでデバイス(モバイル・PC)ごとに表示を変える方法!
仙台・宮城の皆さんこんにちは! 今日はWordPressで便利な小技を一つ。WordPressでデバイス(モバイル・PC)ごとに表示を変える方法です。具体的には、 モバイルサイトでは表示したいけど、PCでは非表示にしたい! PCサイトとモバイルサイトのボタンのデザインを変えたい! といった時にとても便利な方法です。では、早速。 <?php if ( wp_is_mobile() ) : ?> //モバイルサイト用のコンテンツ <div id="image"><img src="/mobile_image.jpg"></div> <?php else: ?> //PCサイト用のコンテンツ <div id="image"><img src="/pc_image.jpg"></div> <?php endif; ?> 何となくわかりますね。 if ( wp_is_mobile() ) はデバイスが「モバイルなら」ということです。そしてelseはモバイル以外なら、つまり「PCなら」ということです。 ちょっと応用 どちらか片方だけ表示させたい場合です。空白にしちゃえばいいんですが、なんかすっきりしません。 モバイルだけ表示する場合 モバイルサイトだけ表示させたい場合は、以下のようにします。 <?php if ( wp_is_mobile() ) : ?> //モバイルサイト用のコンテンツ <div id="image"><img src="/mobile_image.jpg"></div> <?php endif; ?> PCだけ表示する場合 逆にPCサイトだけに表示させたい場合は、論理演算子の!を使って否定します。 <?php if ( !wp_is_mobile() ) : ?> //PCサイト用のコンテンツ <div id="image"><img src="/pc_image.jpg"></div> <?php endif; ?> CSSでする場合 通常(ワードプレス以外)、下記のようにブラウザの横幅を検知して、CSSのdisplay: none;で済ませる方法が一般的です。 @media only screen and (min-width: 680px) { #image{ display: none; } } 上記の例では「ブラウザの幅が680px以上なら非表示」にするという記述です。680pxつまり「PCで表示する場合は非表示」となるわけです。 もちろん、CSSでも大丈夫ですが、wp_is_mobile()を使った方がスマートな感じがしますね。 まとめ 現在はレスポンシブ化が標準化されています。WordPressを使ったサイトではぜひ使ってみてください。 それではまた!仙台・宮城でのホームページ制作やサイトリニューアルならアンドシークまで!もちろん宮城県外の方も大歓迎です!
WordPress(ワードプレス)でトップページにだけ表示させる方法!
仙台・宮城の皆さんこんにちは! 今日はWordPressで便利な「条件分岐」の小技を一つ。WordPressで「トップページだけ表示させる」方法です。具体的には、 トップページにだけバナーを表示させたい! トップページだけメッセージを表示させたくない! といった時にとても便利な方法です。では、早速。 <?php if ( is_home() ) : ?> //トップページにだけ表示 <div id="image"><img src="/top-image.jpg"></div> <?php else: ?> //トップページ以外で表示 <div id="image"><img src="/default-image.jpg"></div> <?php endif; ?> もうお分かりですよね。 if ( is_home() ) は「トップページなら」という意味です。 そして、elseは「トップページ以外なら」という意味になります。 応用編 少しだけ応用すれば、いろいろなパータンで使用することができます。 トップページだけ!他のページは必要ない場合 「トップページだけ表示させて、他のページは何も表示させない」場合は、 <?php if ( is_home() ) : ?> //トップページにだけ表示 <div id="image"><img src="/top-image.jpg"></div> <?php endif; ?> elseを記述しなければいいだけです。 トップページだけ表示させたくない! トップページだけ表示させたくない場合は、!で否定して!is_home()とします。 <?php if ( !is_home() ) : ?> //トップページにだけ表示 <div id="image"><img src="/default-image.jpg"></div> <?php endif; ?> おまけ 「固定ページをホームに設定している」場合は、以下のように記述しなければいけません。 <?php if ( is_front_page() ) : ?> //トップページにだけ表示 <div id="image"><img src="/top-image.jpg"></div> <?php else: ?> //トップページ以外で表示 <div id="image"><img src="/default-image.jpg"></div> <?php endif; ?> is_home()をis_front_page()に変更します。これで固定ページをホームに設定している場合、はトップページだけ表示されるようになります。 どちらも対応できるように両方を指定 以下のように ||(ORの意味)で繋げれば、両方に対応してくれます!これが最終形ですね。 <?php if ( is_home() || is_front_page() ) : ?> //トップページにだけ表示 <div id="image"><img src="/top-image.jpg"></div> <?php else: ?> //トップページ以外で表示 <div id="image"><img src="/default-image.jpg"></div> <?php endif; ?> まとめ トップページは特別なコンテンツを配置する場合が多いです。 違うテンプレートを用意するのも手ですが、例えば画像1つで新しいテンプレートを作るのはとても非効率です。是非、試してみてください! それではまた!仙台・宮城でのホームページ制作やサイトリニューアルならアンドシークまで!もちろん宮城県外の方も大歓迎です!
WordPressで固定ページかどうか判定するには「is_page()」を使います!
仙台・宮城のWEB担当者の皆さんこんにちは! 今回はWordPressで固定ページかどうか判定するための「is_page()」について解説します!いろいろな所で使える便利なコードなので、是非覚えてください。 使い方 それでは、早速基本的な使い方から。 <?php if(is_page()): ?> //固定ページだけで処理する内容 <?php endif; ?> 「固定ページでだけ処理したい!」だけでしたら、上記で大丈夫です。 プラスして「でも固定ページ以外では違う処理をしたい!」という場合は、以下のようなコードになります。 <?php if(is_page()): ?> //固定ページだけで処理する内容 <?php else: ?> //固定ページ以外で処理する内容 <?php endif; ?> <?php else: ?>で「以外」の処理を書き加えます。そんなに、難しくないですよね。 is_page()の他の使い方 固定ページか判定する以外に「特定の固定ページにだけ表示させてい!」という場合もこのis_page()を使って判定します。 IDで判定 特定の固定ページを「ID」で判定するには以下のようなコードになります。 <?php if(is_page(512)): ?> //IDが512の固定ページの場合の固定ページだけで処理 <?php endif; ?> 上記のように書けば、idが512の固定ページだけで表示されるようになります。 ちょっと補足! 512などの整数は' 'で囲んでも囲まなくても大丈夫です。 ページタイトルで判定 特定の固定ページを「ページタイトル」で判定するには以下のようなコードになります。 <?php if(is_page('サービス')): ?> //ページタイトルが「サービス」の固定ページだけで処理 <?php endif; ?> スラッグで判定 特定の固定ページを「スラッグ」で判定するには以下のようなコードになります。 <?php if(is_page('service')): ?> //スラッグが「service」の固定ページだけで処理 <?php endif; ?> 複数のページを指定 「複数の固定ページを判定する」場合は、以下のように配列で指定します。 <?php if(is_page(array('32','324','512'))) : ?> //IDが32、312、512、の固定ページで処理する内容 <?php endif; ?> ID、ページタイトル、スラッグを混ぜてもOK! <?php if(is_page(array('about','324','サービス'))) : ?> //スラッグが「about」、IDが「324」、ページタイトルが「サービス」の固定ページで処理する内容 <?php endif; ?> この書き方は間違い! 複数を指定する際によく間違うパターンは、以下のように配列を使用せずに指定してしまう場合です。 <?php if(is_page('32','324','512')) : ?> //この書き方は間違い。よくある間違いパターン。 <?php endif; ?> 本当によく間違ってしまうパターンなのでご注意ください。 まとめ いかがでしたか?固定ページを判定するいろいろな方法でした。 表題は「固定ページかどうか判定する」という内容でしたが「特定の固定ページを判定する」方が長くなってしまいましたね。 それではまた!仙台・宮城でのホームページ制作やサイトリニューアルならアンドシークまで!もちろん宮城県外の方も大歓迎です!
WordPressで「画面が真っ白」の時に最初にやって欲しいこと!それはデバッグモード!
仙台・宮城のWEB担当者の皆さんこんにちは! 今回はWordPressで「画面が真っ白」という不測自体にも慌てず、最初にして欲しいことについてお話したいと思います。 当サイトも不覚ながら真っ白な状態になってしまいました、、、、。 まずは、原因を探る 「真っ白なんだから何もわからない」ご尤もです。ソースコードを見ても真っ白なんですから、本当に八方ふさがりという状態です。 デバッグモード そんな時は「デバッグモードをオン」にすることで、エラー箇所が特定できることがあります。wp-config.phpの84行目くらいにある、define( 'WP_DEBUG', false )という箇所を見つけてください。 define( 'WP_DEBUG', false ); falseをtrueにします。 define( 'WP_DEBUG', true ); これで、「デバッグモードがオン」になりました。 エラー箇所を特定 デバッグモードをオンにすることで、以下のようなメッセージが表示されました。 Notice: register_sidebar が誤って呼び出されました。「サイドバー 1」サイドバーの引数の配列で id が設定されませんでした。既定では「sidebar-1」です。id に「sidebar-1」を設定することでこの情報を消して、既存のサイドバーのコンテンツを保つことができます。 詳しくは WordPress のデバッグをご覧ください。 (このメッセージはバージョン 4.2.0 で追加されました) in /home/users/2/xxx/xxxx/xxx/xxx.net/xxx/xx/wp-includes/functions.php on line 5313 今回の場合はサイドバーに問題があるようです。色々調べてみるとfunction.phpの以下の場所に原因があるようでした。 register_sidebar(array( )); 以下のように修正してアップロード。 register_sidebar(array( 'id' => 'sidebar-1' )); 無事、正常に表示されました!これで一安心です。このように一つ一つ順を追って原因を特定することが大事です! デバッグでも解決しなかったら…。 最近、どのような更新をしたか思い出してみましょう。 wordPressのアップデート プラグインのアップデート etc…原因はいろいろ考えられますが、デバッグでわからない場合は、基本的にエラーの出る前の状態にもどさなければなりません。 「バックアップ」が重要になりますが、この辺のことは後日じっくり解説したいと思います。 まとめ まずは「エラー箇所を特定」することが、解決の一番の近道です。焦らずデバッグしてから、対処してください! それではまた!仙台・宮城でのホームページ制作やサイトリニューアルならアンドシークまで!もちろん宮城県外の方も大歓迎です!
WordPressの.htaccessが勝手に書き換えられてしまう場合はココをチェック!
仙台・宮城の皆さんこんにちは! 今日はWordPressの.htaccessについてのお話です。WordPressではパーマリンク設定をすると自動的に.htaccessが生成されます。リダイレクトの内容などはこの.htaccessに加えていくこになるのですが、何度やっても加えた内容がいつの間にか消えてしまいます。 # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress 注目していただきたいのは、1行目の# BEGIN WordPressと11行目の# END WordPressという記述です。この間に記述すると消えてしまうわけです。 なので、リダイレクトの記述などは、下記のような形で# END WordPressの下に記述します。 # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress <IfModule mod_rewrite.c> RewriteCond %{HTTP_HOST} ^www\.datena\.net RewriteRule (.*) http://datena.net/$1 [R=301,L] RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L] </IfModule> 上記のように記述すれば、もう消えることはありません さいごに WordPressの.htaccessに何かしら記述を加えた記憶がある場合は、一度チェックしてみてください。 もしかしたら、以前に追加した内容が消えてしまっているかもしれません。 それではまた!仙台・宮城でのホームページ制作やサイトリニューアルならアンドシークまで!もちろん宮城県外の方も大歓迎です!
WordPress(ワードプレス)で記事内の画像をサムネイルにする方法!
仙台・宮城の皆さんこんにちは! WordPressのサムネイルって毎回毎回設定するのって面倒ですよね? 「記事内からサムネイルを自動で拾ってくれたらいいのに」と考えたことがある方も多いはずです。 いちいちサムネイル画像を設定するのは面倒! 記事の中の写真をそのままサムネイルに使いたい! という方には、大変おすすめな方法です。 記事の一番最初の画像を取得する いつものように、function.phpに以下を加えます。 function catch_that_image() { global $post, $posts; $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"; } return $first_img; } imgタグを順番に取得 6行目のpreg_match_all()で正規表現検索を繰り返して、「imgタグを順番に取得」しています。 $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches); 最初の画像を取得 7行目で「最初の画像を取得」しています。 $first_img = $matches [1] [0]; 記事内に画像がない場合 「記事内にimgタグが存在していない場合」は、10行でdefault.jpgを$first_imgに入れています。 記事に画像を使っていない場合もきちんと想定されているんです。 if(empty($first_img)){ $first_img = "/images/default.jpg"; } 画像を表示させる 以下のように記述すれば、表示されます。 <img src="<?php echo catch_that_image(); ?>"> 応用編 ここで応用編です。「サムネイルがなければ、記事内の最初の画像をサムネイルにする」という感じにする場合は下記のようになります。 <?php if (has_post_thumbnail()) : ?> <?php the_post_thumbnail('single-thumbnails'); ?> <?php else : ?> <img src="<?php echo catch_that_image(); ?>"> <?php endif ; ?> まとめ 自動で1枚目の画像を拾ってくるなら更新作業も楽になるんではないでしょうか。ブログを長く続けるために、少しでも楽な方法を考えるのは重要なことです。 それではまた!仙台・宮城でのホームページ制作やサイトリニューアルならアンドシークまで!もちろん宮城県外の方も大歓迎です!
WordPressで最終更新日を表示する方法!SEOにも効果あり!
仙台・宮城の皆さんこんにちは! 今日はWordPressで「最終更新日」を表示する方法を解説します。投稿日ではなく「最終更新日」ですので、ご注意ください。 記事の最終更新日を表示するテンプレートタグ 下記のようにthe_modified_date()を利用すれば、表示させることができます。 <?php the_modified_date() ?> 任意の「日付フォーマット」を使うこともできます。 <?php the_modified_date('Y-m-d'); ?> //2018-08-31 <?php the_modified_date('Y年n月j日 l'); ?> //2018年8月29日 水曜日 これが、基本となります。 記事が更新されていたら更新日を表示するし、更新されていなければ非表示にする ここからちょっと応用となります。 「記事が更新された時だけ、更新日を表示する」には下記のようにします。公開日は必ず表示して、更新日は更新があった場合にだけ表示するという時に使えますね。 <?php if(get_the_time('U') !== get_the_modified_time('U')){ the_modified_date('Y-m-d'); } ?> get_the_timeは投稿時刻を取得できるテンプレートタグです。get_the_modified_timeは最終更新時刻を取得します。一行目にあるif文は「投稿時刻と最終更新時刻が違うならば・・・」という事になります。 記事が更新されていたら更新日を表示し、されていなければ公開日を表示する 続いて、「記事を公開後に更新されていたら更新日を表示し、更新されていなければ公開日を表示」させるようにます。 <?php if(get_the_time('U') !== get_the_modified_time('U')){ //更新されていたら the_modified_date('Y-m-d'); }else{ //更新されていない the_time('Y-m-d'); } ?> まとめ いかがでしたでしょうか。 世の中のブログを見ていると1年以上前の日付が表示されている記事があります。本当に更新していないのかもしれませんが、記事の内容などを見直したりして更新した場合は、投稿日だけを表示させておくのは勿体ありません。 日付が1年以上前のままでは、読んでいる方としては不安になり、どんなに素晴らし記事であっても「この記事本当なの?もう違うんじゃない?」と思ってしまいます。最終更新日を表示することにより、記事に対する信頼性も増し、離脱率や滞在時間も改善されると思います。 是非この機会に「最終更新日」を表示させてはいかがでしょうか。 おまけ 投稿日や更新日を表示させる際には、下記のように<time>タグを利用するのがSEO的にいいみたいです。datetime属性で日時をきちんと教えてあげるのがポイントのようです。 <?php if(get_the_time('U') !== get_the_modified_time('U')){ ?> 最終更新日:<time class="updated" datetime="<?php the_modified_date("Y-m-d H:i:s") ?>"><?php the_modified_date('Y年n月j日 l') ?></time> <?php }else{ ?> <time class="entry-date published" datetime="<?php echo get_the_date("Y-m-d H:i:s") ?>"><?php echo get_the_date('Y年n月j日 l') ?></time> <?php } ?> それではまた!仙台・宮城でのホームページ制作やサイトリニューアルならアンドシークまで!もちろん宮城県外の方も大歓迎です!
WordPress(ワードプレス)で新着記事に「NEW」マークをつける方法
仙台・宮城の皆さんこんにちは! 今日はWordPressの新着記事に「NEW」マークをつける方法についてです。結構簡単にできちゃいますので、WEB担当者の方はご検討ください! [toc] そもそもNEWマークは必要? はい、必要です! 検索エンジン経由で訪れるユーザーは下層ページがランディングになることが多いので、そんなに意識しなくてもいのですが、トップページへ直接来てくれるリピーターに対してNEWマークはとても有効に作用すると思います。視覚的に新しい記事であることが伝わりますので、「まだ読んでいない記事ですよ!」と視覚的に伝えることができます。更に「きちんと更新しているサイト」ということを、これも視覚的に印象づけることができます。 NEWマークのつけかた 日数単位でNEWマークをつける 下記は「3日だけNEWマーク」を付ける場合です。 <?php $days = 3; // NEWマークを表示する日数 $now = date_i18n('U'); // 現在の時間 $entry = get_the_time('U'); // 投稿した時間 $term = date('U',($now - $entry)) / 86400; if( $days > $term ){ echo '<span class="new-mark">NEW</span>'; } ?> お気づきかと思いますが、5行目の「86400」というのは1日の秒数です。ここが肝になります。 この秒数が表示する「日付や時間の単位」になります。上記の場合は、変数$dayの3と合わせて3日間となるわけです。 1週間NEWマークを付けたい時は、$dayを7に設定することになります。 時間単位でNEWマークをつける 下記は「3時間だけNEWマークを付ける」場合です。 <?php $hour = 3; // NEWマークを表示する時間 $now = date_i18n('U'); // 現在の時間 $entry = get_the_time('U'); // 投稿した時間 $term = date('U',($now - $entry)) / 3600; if( $hour > $term ){ echo '<span class="new-mark">NEW</span>'; } ?> 1時間の秒数である「3600」で割ります。変数$hourの3と合わせて3時間となります。 分単位でNEWマークをつける 使うことはないと思いますが、「3分だけNEWマークを付ける」場合です。60秒に変更します。 <?php $min = 3; // NEWマークを表示する分 $now = date_i18n('U'); /// 現在の時間 $entry = get_the_time('U'); // 投稿した時間 $term = date('U',($now - $entry)) / 60; if( $min > $term ){ echo '<span class="new-mark">NEW</span>'; } ?> 1分間の秒数「60」で割ります。変数$minの3と合わせて3分間となります。 さいごに いかがでしたたか?結構簡単ですよね? 冒頭でも触れましたがリピーターに対して、NEWマークはとても有効です。是非お試しください! それではまた!仙台・宮城でのホームページ制作やサイトリニューアルならアンドシークまで!もちろん宮城県外の方も大歓迎です!
WordPressで日付を扱う際はwp_date()を使いましょう!
仙台・宮城の皆さんこんにちは。 本日はWordPressで日付を扱う際は「wp_date()」を使いましょう!というお話です。 先日、ショートコードの基本の基本編ということで、記事を書きましたが、その際にfunction.php内で日付を扱う機会があったので、自分の備忘も兼ねて書いておきます。 [related id=214 label=こちらの記事です] wp_date()の使い方 使い方は、PHPのdate()と同じです。現在時刻を取得する場合は以下のように書きます。 wp_date('Y-m-d H:i:s'); 本当にdate()と同じですよね。 date_i18n()は非推奨 ちなみにdate_i18n()は5.3から非推奨になりました。非推奨になってしまったということは、いずれ使えなくなるということです。 date_i18n('Y-m-d H:i:s'); //5.3から非推奨 これまでdate_i18n()で日付を取得していた人もこの機会にwp_date()に変える事をお勧めします。 date()じゃダメなの? というか、どうしてdate()じゃダメなの?と突っ込まれそうですが、以下のようにdate()で日付を取得すると、WordPressのデフォルトタイムゾーンの「UTC」の時間になってしまうんですね。 豆知識! UTCは協定世界時「Universal time coordinated」の略で、現在世界の基準となっている時刻です。 ちなみにUTCは日本時間より9時間遅い設定になっています。 date('Y-m-d H:i:s'); //UTCの時間で取得されてしまう それじゃ「WordPressのタイムゾーンを+9に変えちゃえば!?」と更に突っ込まれそうですが、もちろんそういう方法もありますが、システム全体を変更してしまうと怖いので、私はこの方法を推奨しています! まとめ いかがでしたでしょうか?普段PHPで使っているdate();の頭にwp_をつけるだけなので、抵抗なく使用できると思います。 ただdate_i18n()を使用している方は、この機会に変えておいた方がいいですね。アップデートのタイミングで突然取得できなくなってしまう可能性があります。ぜひご検討ください。 それではまた!仙台・宮城でのホームページ制作やサイトリニューアルならアンドシークまで!もちろん宮城県外の方も大歓迎です!
WordPress(ワードプレス)で「is_archive()」を使ってアーカイブページにだけ表示させる方法!
仙台・宮城の皆さんこんにちは。 今日は、WordPressで「アーカイブページ」にだけ表示させる方法をご紹介します! ちなみに、アーカイブページというのは、ある「条件」で複数の投稿を集めて表示してるページです。 条件というのは、「カテゴリ」だったり、「タグ」だったり、「日付」だったり、「投稿者」だったります。 is_archive() では、早速具体的な方法です。is_archive()で判定します。 <?php if(is_archive()) : ?> //アーカイブページでのみ表示(処理)するコード <?php else: ?> //それ以外のページで表示(処理)するコード <?php endif; ?> 上記のように書けば、アーカイブページだけで表示したり処理するといったことができるようになります。 1ページ目だけに表示したい場合 これはちょっと応用です。アーカイブページは「ある条件の投稿を集めて表示してるページ」ですので、条件にあった投稿が多く存在すれば「ページネーション」で複数のページに分けて表示されます。 そんな時「1ページ目だけに表示したい」という場面も出てくると思います。そういった場合は、以下のようなコードで解決できます。 <?php if(is_archive() && !is_paged()) : ?> //アーカイブページの1ページ目でのみで表示(処理)するコード <?php endif; ?> && !is_paged()が条件に加わりました。is_paged()は2ページ目以降であればtrueが返ってきます。それを!で否定していますので、 「アーカイブページ(is_archive())で、かつ(&&)2ページ目以降じゃない場合、つまりは1ページ目(!is_paged())だけ」 だけということになります。 2ページ目以降でも表示させたい内容があるなら、上記のコードに加えて、以下のように書けばいいです。 <?php if(is_archive() && !is_paged()) : ?> //アーカイブページの1ページ目でのみで表示(処理)するコード <?php else: ?> //アーカイブページの2ページ目以降でのみで表示(処理)するコード <?php endif; ?> ただ、最初のifで!があって、次にelseがくるなら、このように書いた方が自然ですよね。 <?php if(is_archive() && is_paged()) : ?> //アーカイブページの2ページ目以降でのみで表示(処理)するコード <?php else: ?> //アーカイブページの1ページ目でのみで表示(処理)するコード <?php endif; ?> 上記の例なら 「アーカイブページ(is_archive())で、かつ(&&)2ページ目以降(is_paged())」 ということになります。 おまけ 以下のコードは「アーカイブページで2ページ目以降」というコードです。 <?php if(is_archive() && is_paged()) : ?> //アーカイブページの2ページ目以降でのみで表示(処理)するコード <?php endif; ?> 実はこのコード、SEOではよく使います。どういう場面で使用するかというと「メタタグでnoindexを挿入」する場合です。 <?php if(is_archive() && is_paged()) : ?> <meta name="robots" content="noindex"> <?php endif; ?> 「2ページ目以降をnoindexにする、しない」は、まだまだ議論のあるところですが、「バナーを表示させる、しない」とかの見た目の処理以外にも、SEO対策で「ソースコードを正しくに表示させる」ために使う場面は多くありますね。 まとめ いかがでしたでしょうか? アーカイブページは、SEO関連の話題でよく出てくるキーワードです。この機会にアーカイブページのソースコードでも覗いてみてはいかがでしょうか? それではまた!仙台・宮城でのホームページ制作やサイトリニューアルならアンドシークまで!もちろん宮城県外の方も大歓迎です!
【WordPress】ショートコード作成の基本中の基本を解説!一番簡単なショートコードを作ります。
仙台・宮城の皆さんこんにちは! [hello2]今日はWordPressのショートコードについて解説します。 ショートコードと聞くと、敷居が高い感じがすると思いますが、基本さえ押さえれば怖いことはありません。 今日は基本を確認しながら一番簡単な文字を出力するだけのショートコードを作りたいと思います。 ショートコードって何? まずは、ショートコードについて簡単におさらいいておきましょう!ショートコードは「function.phpに書いた関数を[]で囲んだコードで投稿記事内に簡単に呼び出せる!」という、とても便利な機能です。 一番簡単なショートコード それでは、本日の本題に入ります。 以下が「文字列を表示するだけの一番簡単なショートコード」です。 //ショートコードで「仙台の皆さんこんにちは!」と出力 function helloFunc() { return "仙台の皆さんこんにちは!"; } add_shortcode('hello', 'helloFunc'); それでは、一つづつ解説していきます。 まずは、5行目のadd_shortcodeに注目してください。 add_shortcode('hello', 'helloFunc'); add_shortcodeはWordPressで用意されたショートコードを追加するための関数です。 ショートコード名 第1引数'hello'はショートコード名となります。この文字列を投稿入力画面でショートコードとして入力します。 呼び出す関数 第2引数'helloFunc'は呼び出す関数になります。例の場合は2行目~4行目が該当します。 function helloFunc() { return "仙台の皆さんこんにちは!"; } つまりadd_shortcode('hello', 'helloFunc');の意味は「ショートコードhelloが見つかったら、helloFuncという関数を呼び出す」ということです。 実際に使ってみましょう! function.phpにコードを加えて保存! まずは、function.phpにサンプルでも使った以下のコードを加えて保存&アップロードします。 //ショートコードで「仙台の皆さんこんにちは!」と出力 function helloFunc() { return "仙台の皆さんこんにちは!"; } add_shortcode('hello', 'helloFunc'); アップロードが済んだらトップページ(サイト内のどのページでもOK)を表示してみてください。function.phpの記述にエラーがあると真っ白な画面になり。何も表示されなくなります。 重要! function.phpを編集する際は、必ずファイルをコピーしてから編集を行ってください。エラーがあっても、すぐに戻せるように必ずコピーを用意しておきましょう! エディタで呼び出し! では、実際にエディタでショートコードを使って関数を呼び出してみましょう! エディタ内では[]でショートコード名を囲んで書き込むだけでOKです。 重要! ショートコードはエディタの「ビジュアル」でも「テキスト」でも両方で使うことができます。 以下のように書き込んで「仙台の皆さんこんにちは!」と出力されていれば成功です! 文字を出力するだけの一番簡単なショートコードでしたが、基本は理解していただけたと思います。簡単ですよね? ちょとだけ応用編 では、ちょとだけ応用したものを作ってみたいと思います。折角ですから動的に変化させるショートコードを作ってみたいと思います。 先程の例を少し改良して以下のように表示を変えたいと思います。 05:00から11:59までは「仙台のみなさん、おはようございます!」 12:00から17:59までは「仙台のみなさん、こんにちは!」 18:00から04:59までは「仙台のみなさん、こんばんは!」 という感じで時間ごとに挨拶を変えてみたいと思います。 function helloFunc2() { $time = wp_date("G");//時刻の24時間表記 (0埋め無し) if($time >=5 && $time =12 && $time =18 && $time =0 && $time
WordPressで自動更新通知メールを停止させる方法
仙台・宮城の皆さんこんにちは。 今回はWordPressでプラグインの「自動更新メールを停止」させてる方法について解説します。 具体的な方法 自動更新メールには「プラグイン」と「テーマ」の自動更新メールがあります。 プラグインの自動更新通知メールを止める 以下のような内容メールに見覚えありませんか?プラグインを多く入れると毎日の様に来ます。 一部のプラグインが、https://andseek.jp のサイト上で自動的に最新バージョンに更新されました。何もする必要はありません。 以下のプラグインを更新しました: - Broken Link Checker (バージョン1.11.15から1.11.16へ) 問題が生じたり、サポートが必要な場合は、WordPress.org のサポートフォーラムのボランティアが助けになるでしょう。 https://ja.wordpress.org/support/forums/ WordPress チーム 以下をfunction.phpに記述すれば、プラグインの自動更新通知メールは停止します。 // プラグイン自動更新通知メール停止 add_filter( 'auto_plugin_update_send_email', '__return_false' ); テーマの自動更新通知メールを止める テーマの自動更新通知メールを停止するには、下記のようなコードをfunction.phpに加えます。プラグインの場合と殆ど一緒ですね。pluginがthemeに変わっただけです。 // テーマ自動更新通知メール停止 add_filter( 'auto_theme_update_send_email', '__return_false' ); 両方止めたい場合 以下のようにまとめて両方記述してください。自動更新通知メールは一切来なくなります。 // プラグイン自動更新通知メール停止 add_filter( 'auto_plugin_update_send_email', '__return_false' ); // テーマ自動更新通知メール停止 add_filter( 'auto_theme_update_send_email', '__return_false' ); まとめ いかがでしたでしょうか?プラグインをたくさん入れると結構煩わしいんですよね。あとはお客さんから「メール止めてくれ」なんて言われることも。 ちょっとした知識として、頭の片隅に置いておいてもらえると幸いです。 それではまた!仙台・宮城でのホームページ制作やサイトリニューアルならアンドシークまで!もちろん宮城県外の方も大歓迎です!