WordPressのプラグイン「Elementor」便利なのでWEB操作に慣れない方へのサイトで頼りがちなのですが、しょっちゅう500エラーで更新できなくなるのが悩ましい。
500エラーが出た際の解決方法としてWAFの無効が一般的のようですが解決せず、プラグイン「WP-Optimize」のインストール>データベース>すべての投稿リビジョンをクリーンにチェック>[最適化を実行]を押下 で解決。
WordPressのプラグイン「Elementor」便利なのでWEB操作に慣れない方へのサイトで頼りがちなのですが、しょっちゅう500エラーで更新できなくなるのが悩ましい。
500エラーが出た際の解決方法としてWAFの無効が一般的のようですが解決せず、プラグイン「WP-Optimize」のインストール>データベース>すべての投稿リビジョンをクリーンにチェック>[最適化を実行]を押下 で解決。
WordPressのプラグインThe Event Calendar、All-In-One Event Calendar亡き今、イベント関連のプラグインではこれが一強らしい。
ということで依頼を受けてインストールしたものの、「前のイベント」「後のイベント」のページネーションリンクが効かない。URLを観てみると、URL内に日本語が入ってしまっている。
これはどうもリンク構造と翻訳の問題らしく、Gemini先生に聴いてみてテーマ内のfunction.phpにリンクを翻訳しないコードを書いてみても解決せず。結局パーマリンクを「月と投稿名」(https://hogehoge.com/2026/01/sample-post/)から基本(デフォルト:https://hogehoge.com/?p=123) にしたところ解決。
これにともない、リダイレクト処理が必要になりプラグイン「redirection」をインストールすることに。
2024年の2月あたりから、ロリポップのライトプランでもデータベースを複数作成することができるようになったらしいのでこれを機に5.6だったMySQLを8にバージョンアップすることに。
こちらを参考にさせていただきました。
ロリポップ・データベース(MySQL8.0 (← 5.7(5.6)バージョンアップデートの手順
ミュージシャンのサイトを作成していると、必ずディスコグラフィーを作りたいという場面に遭遇します。要件は以下の通り
イメージはこんなかんじ。Discographyではないですが「Theme」というカテゴリーに関連づけられた投稿のアイキャッチが時系列順に正方形で並んでいます。

今まではNewpost Catchというプラグインにお世話になっていたのですが、デバイスの解像度があがってきた昨今、thumbnailサイズの画像しか取得できないのは厳しい。というわけでWP_Queryを使った方法で実装してみました。
WP Codeというコードをスニペットとして登録、ショートコードとして本文に埋め込めるプラグインを使用します。
WP_Queryで以下を作成し、WP CodeでCode Snipetを新規作成し、コードを入力します。そこで生成されたショートコードを本文の表示したいところに挿入すれば、サムネイル集が好きなところに表示できるようになります。
<?php
$args = array('posts_per_page' => -1, 'orderby' => 'date');
$query = new WP_Query($args);
$query = new WP_Query( 'cat=492' );
?>
<?php if( $query->have_posts() ) : ?>
<ul class="list-gallery">
<?php while ($query->have_posts()) : $query->the_post(); ?>
<li>
<div class="thumbnail"><a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('medium'); ?></a></div>
<div class="title"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></div>
</li>
<?php endwhile; ?>
</ul>
<?php endif; ?>
<?php wp_reset_postdata(); ?>
$args = array(‘posts_per_page’ => -1, ‘orderby’ => ‘date’);
posts_per_pageを-1にすると上限なく表示できる…はずなのですが、ダッシュボードの表示件数に依存してしまいます。
orderbyをdateにすると投稿日時順(昇順)で並びます
$query = new WP_Query( ‘cat=492’ );
cat=のあとにカテゴリーIDを入力することで特定のカテゴリーのアイキャッチだけひっぱってこれます
<ul class=”list-gallery”>
画像をグリッドで並べるのに使うクラス
<div class=”thumbnail”>
画像の大きさを制御するのに使うクラス
CSSはこんなかんじで可変のグリッドにしています(CSSは得意ではないのでもっとすっきりした方法があると思いますが)
ul.list-gallery{
display: grid;
grid-gap: 10px;
overflow: hidden;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
list-style:none
}
.list-gallery li {
margin-right:10px;
}
.thumbnail img{
width:250px;
height:250px;
object-fit: cover;
}
なんでかメンテナンス画面から復旧できなくなってたんだけど、リモート側のルートを表示して「.maintenance」を一旦「.maintenance_」(アンスコ追加)とリネームしたら正常に表示されるようになった。なんだったんだろ…
ありがとう過去に同じ障害に陥った人…
https://www.terakoya.work/wordpress-maintenance-howto/
今どき写真の容量なんて軽く3MB, 4MBはあるこのご時世に
Wordpressって、なぜか2MBまでの写真しかあげられなくて不便ですよね。
で、調べてみたところphp.ini, htaccessを使った変更方法が。
参考
http://www.magical-remix.co.jp/magicalog/archives/2857
しかしながら、php.iniとhtaccessの両方トライしたものの
WordPressの管理画面ではいっこうに反映されず…
ホスティングサービスのロリポップのFAQを調べたところ
管理画面からPHP.iniを編集できるようでした。
ログイン>WEBツール>PHP設定>ドメインを選択し「設定変更へ」をクリック
「■そのほか」の表内にある
====================================
upload_max_filesize
「 post_max_size 」 も同時に変更します
====================================
上記を2Mから20Mに変更することで対応できました。
ちなみにここのPHP設定でPHPのバージョンもアップできる。ロリポップべんり。
子テーマを作ることで解決できました。
たとえばtwentyfifteenを親テーマとし、子テーマ「twentyfifteen-child」を作る、というふうなかんじ。これだとカスタムした部分は別ディレクトリに保存されているので、親テーマにアップデートがかかっても子テーマに記載したカスタマイズは影響を受けません。
まず、カスタマイズ用をディレクトリ(twentyfifteen-child)を作成して、中に白紙のstyle.cssとfunctions.phpを作成して放り込みます。
そして、style.cssのトップに下記を記載
/*
Theme Name: テーマの名前(Twentyfifteen-childとか)
Theme URI: http://example.com/wp-content/themes/twentyfifteen-child/
Description: Twenty Fifteen Child
Author: なまえ
Author URI: http://example.com/
Template: twentyfifteen (親テーマの名前)
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
Text Domain: twenty-fifteen-child
*/
functions.phpに下記を記載
あとは必要に応じてheader.php, footer.phpなんかを放り込んでいくと親テーマを上書きしてくれます。functions.phpだけは上書きされないようです。
そこまで用意ができたら管理画面の外観>テーマから子テーマを有効にします。
わたしは-childという名前にするとサイト運営者がわかりにくいので、サイトのサービス名を子テーマの名前にしています。
参考:
http://wpdocs.sourceforge.jp/%E5%AD%90%E3%83%86%E3%83%BC%E3%83%9E
2015/5/1追記
mqTranslateはアップデート止めてしまったらしいので、qTranslate-xに移行しました。
サイトを多言語対応にしたい。日英対照のページを作るのはいいとして、はて、どうやって言語を保持したままのナビゲーションを作ったらいいんだろう、と思って調べたところ、さすがオープンソース。「あったらいいな」というものはたいがいどこかの偉い人が作ってくれているものなのですね。ありがたいことです。
WordPressを多言語対応するにあたってのメモ (さらに…)
WordPressで、1枚の固定ページの中に、カテゴリーごとにまとめられたサムネイルのブロックを配置したいなあと思ったことはないでしょうか?写真をやっている人はギャラリー、音楽をやっている人ならディスコグラフィ、料理をやっている人ならジャンル別写真一覧など、結構使う場面はありますよね。わたしは写真をやっているので下記のように運用しています。
で、新しい投稿をするたびに、ギャラリーのインデックスに個別ページのサムネイルが自動で追加され、かつ、それがカテゴリー別にまとめられたら良いなと思っておりました。
今までは調べまくってindexテンプレートにphpを直書きして実装していたのですが
Newpost Catchという素晴らしいプラグインを見つけたので僭越ながらご紹介します。
詳細は上記ページをご覧いただくとして
[npc]
Newpost Catchのショートコードについて
ほんとうに素晴らしいプラグインをありがとうございます!
ちなみにNewpost Catchを利用して組んでいるのが下記のページになります。
私は本文にはimgを挿入していないのですが、アイキャッチ画像に画像を設定するとひっぱってきてくれます。便利ー!(実際の個別投稿ページではアイキャッチ画像はdisplay:noneで消しています)
Gallery | Mai Suzuki Photo Works
http://www.inboundpress.net/wordpress-speed.html
上記サイトを参考に、キャッシュ系のプラグインをいくつか入れてみた。
速度計測サイト
http://gtmetrix.com/
体感としては早くなったような気がするがGTmetrixの評価は変わらずだった。
◆エラーが出た場合の対処方法
Fatal error: Theme CSS could not load after 20 sec. Please download the latest theme at http://galleria.io/customer/.
というエラーが出た場合の対処方法
Galleriaが呼んでいるCSSに不具合があるっぽいのでWordPressの管理画面で
設定 > Slickr Flickr > Galleria Optionで「Galeria not required so do not load the script」を選択 > Save Changesを押下
で解決した。
◆Flickr IDの探し方
http://flickr-id.cohga.net/
◆setをサムネイルで表示する場合のタグの記述方法
[slickr-flickr type=”gallery” search=”sets” set=”setのID番号” items=”アイテム数”]