「Wordpress」タグアーカイブ

WordPressで400万ページ投稿するには

会社情報のサイト https://awb.jp/
当初はまじめに記事をガンガンアップでしていた。
数万ページくらいでカップラーメンができるくらい遅いページ表示。
ページ投稿もどんどん重くなり、投稿にもカップラーメンできそうでした。
あきらめて、全部消して、ページ投稿の見直し。

■ページ投稿
いろいろなCSVアップツールでやってみたが、タイムアウト等でほぼ無理。
直接投稿のプログラムをたたきます。
データも最小限にします。

wp_insert_postで投稿ページ登録。
https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/wp_insert_post

-プログラム例:実際はもう少し複雑—————————————————-

        $post_id = wp_insert_post(array(
            'post_type' => 'post',
            'post_title' => $item[0],
            'post_content' => $item[2],
            'post_status' => 'publish',
            'post_category'  => $item[3],
            'tags_input' =>  $item[4],
            'comment_status' => 'closed',
            'ping_status' => 'closed',
            ));

——————————————————
他のデータとリンクしたい部分をカスタムフィールドに入れておきます。
add post meta
https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/add_post_meta
——————————————————

add_post_meta($post_id, 'hogehoge_number', $item[7])

——————————————————
ひたすら、1ページごとにサーバに投げます。

ページは最小限のデータにして、カスタムフィールド(上記の例だとhogehoge_number)にキーをいれておき、
wpの標準のテーブルと付加価値的データのテーブルを作り、カスタムフィールドで連携して、ページを生成します。

■不具合がでる。
プラグインによってはエラーになります。
サイトマップを作るプラグイン等は特に注意です。

WP「GDPR Cookie Consent」 で「設定を更新できません。」の対応方法

WordPressのコンテンツでの「GDPR(General Data Protection Regulation:一般データ保護規則)」用プラグイン
CookieYes | GDPR Cookie Consent & Compliance Notice (CCPA Ready)

このプラグインは設定が簡単ですが、「「設定を更新できません。」と出て、更新されないことがある。
WAF(Web Application Firewall)でブロックされている可能性があるので、
WAFのログを確認してください。
「*****/edit.php?post_type=cookielawinfo&page=cookie-law-info」というエラーログが出ていたら、
設定の時だけ、WAFをオフにしてください。設定が終わったら、オンにしてください。

CSS & JavaScript Toolbox で不具合?

CSS & JavaScript Toolbox とはWordpressで使うプラグインです。HTMLやCSSやJAVAスクリプトなどを組み込む時に
非常に便利な機能があるプラグインです。

CSS & JavaScript Toolbox

JAVAスクリプトで<script>と書いて「SAVE」ボタンを押しても、反応になし。
バグ?echo “<script>”と書いても「SAVE」ボタンを押しても、反応になし。
いろいろ調べてみて、バージョンをダウングレートしても同じ反応。
CSS & JavaScript Toolbox が原因ではないのでは・・・・

そうです、サーバ側の「WAF」(Web Application Firewall)が原因です。
Webアプリケーションからの攻撃からサイトを守るセキュリティ対策です。

WAFのログを見ると
****/wp-admin/admin-ajax.php?action=cjtoolbox_api&controller=blocks-ajax&CJTAjaxAction=save_blocks
xss-tag-1 

「xss-tag-1」でアクセスを排除したログが出ているのがわかります。
WAFを無効にすると、「SAVE」ができるようになります。

.htaccess でこのルールを許可できますが、セキュリティ上問題が発生する可能性があるので
慎重に設置してください。
SiteGuard_User_ExcludeSig xss-tag-1

WordPressに移動するときに、記事毎のURLを引き継ぐには

独自ドメインでJUGEMなどのBLOGサービスから、Wordpressに引っ越しを
するときに、単独記事に対するリンク切れが気になるところです。
記事IDが違う、.htaccessで一つ一つ書くのは不可能。

JUGEMの場合は下記になります。

http://○×.jp/?eid=112333とあると、wordpressでタグで対応すれば
済むので、http://○×.jp/?tag=112333にリダイレクトさせて、
処理をする。

1)タグ登録
リンクが沢山あるページのタグに旧サイトの記事IDを入れる。
例だと:112233

2)index.phpに下記を追加。

if(ereg("/?eid=", $_SERVER['REQUEST_URI'])){
$change_url = ereg_replace('eid=','tag=', $_SERVER['REQUEST_URI']);

header("Location: http://○×.jp$change_url");
exit;

}

3)タグでの記事表示
タグで表示される記事表示をFULLで出す。

以上  これでリンクの多い記事に対して、タグの部分に旧記事IDを入れる。

株式会社アバンドでは、WordPressなどのCMSツールを使った中規模から大規模までのWeb構築を行っております。

まずは、お気軽にお問い合わせください。

WordPressのCronが動かない

WordPressのCronが動かない方。

(定期処理、スケジュール処理が動かない方)

wp-cron-dashboardなどのプラグインを入れてもちゃんと登録されているのに

動かない方!

すごい大ミスをしていませんか?

公開前等で基本認証をかけてませんか?

基本認証についてはサーバ自体のアクセスは除外にすると動く場合があります。

はい、そのミスを本日やってしまいました。

アクセス設定の参考URLを挙げておきます!

http://mashimonator.weblike.jp/blog/2009/02/htaccessipbasic.html

http://httpd.apache.org/docs/2.0/ja/mod/core.html#satisfy

株式会社アバンドでは、WordPressなどのCMSツールを使った中規模から大規模までのWeb構築を行っております。

まずは、お気軽にお問い合わせください。

PHPのプラグイン開発で不思議なエラー

WordPressなどのプラグイン開発をしていて、「Cannot modify header information – headers already sent by」というエラーが出たら、ヘッダー処理のエラーなのですけど、エラーの指定行もなにもしていないのに・・・という場合。

プラグインのファイルに<?php ・・・・?>の上下にゴミ改行が入っているだけでこのエラーが出ます。

確認してみてください。他にもエラーになる要素はありますが、プラグイン化する前に

普通に動いていた場合はここを確認。

株式会社アバンドでは、WordPressなどのCMSツールを使った中規模から大規模までのWeb構築を行っております。

まずは、お気軽にお問い合わせください。