タグ: Wordpress

  • TCDテーマのアップデート(企業向け)

    前提として、SFTPなど、直接Wordpressのインストールディレクトリにアクセスできる権限が必要。また、既存のテーマのアップデート権限を持っている必要がある。

    この方法であれば、見た目が崩れることなく、テーマのアップデートができるため、企業向けのサイトなどには適している。

    (前準備)

    1. WordPressの管理画面にアクセスする
    2. 「外観」から「テーマ」を選択する
    3. 使っていたTCDのテーマを選択する(テーマの詳細が表示される)。
    4. テーマのバージョンが表示されているので、確認する。

    (テーマの更新)

    1. WinSCPなどのツールを使い、Wordpressの設置されたサーバにアクセスする。
    2. WordPressが設置されたディレクトリにアクセスし、「wp-content」の「themes」を開く。
    3. TCDから落としてきたテーマのZIPファイルを解凍する
    4. 同じフォルダ名のテーマに対して、上書きでアップロードする。上書きできれば、アップデートは完了。上書きできなければ、ファイルのパーミッションを見直す。

    (テーマ更新後の確認)

    1. WordPressの管理画面にアクセスする
    2. 「外観」から「テーマ」を選択する
    3. 使っていたTCDのテーマを選択する(テーマの詳細が表示される)。
    4. テーマのバージョンが表示されているので、確認する。このとき、アップロードしたテーマのバージョンが表示されていれば、バージョンアップは成功。
    5. 実際にウェブサイトを確認し、ずれなどがないかを見る。
  • WordPressのテンプレートのバージョンをあげたら、エラーになった

    WordPressで、独自インストールしていたテンプレートのバージョンをあげたところ、下記のエラーになった。

    Warning: file_exists(): Unable to find the wrapper "https" - did you forget to enable it when you configured PHP? in /*********/wp-content/themes/simplicity2/functions.php on line 214
    

    PHPにOpenSSLのモジュールが入っていなかったのが原因。なので、インストールして、解消した。

    pkg search php73 | grep openssl
    pkg install php73-openssl-7.3.27
    apachectl restart
    
  • WordPressのURLをDBで変更する方法のメモ

    ミスで、Wordpress上で、サイトのURLを変更してしまい、管理画面などにアクセスできなくなった場合に、WordpressのURLをDBの値を直接書き換えて変更する方法のメモ。

    WordPressのURLの情報は、DBの「wp_options」(wp_ は設定によっては変わる)に入っている。”option_name”の”siteurl”と”home”を検索して、値を調べる。これの値が、誤って変更したURLになっていれば、この2つを正しいものにUpdate文で更新する。

    検索するSQL

    select * from wp_options where option_name = 'siteurl';
    select * from wp_options where option_name = 'home';

    UpdateするSQL文

    update wp_options set option_value = 'https://新しいURLを入れる'  where option_name = 'siteurl';
    update wp_options set option_value = 'https://新しいURLを入れる'  where option_name = 'home';
  • めも。

    ファイルオーナーを変えてもFTPログインなしでWordpressのアップデートができない。そんなはずはないと思い、いろいろとチェックしたら、wp-config.phpに、過去にFTPの代わりにSSH2でアップデートをするために加えたFS_METHODの指定があった。これが邪魔をしていたようで、消したところ、FTPのユーザを聞かれずにアップデートができるようになった。

    /** SSH SFTP Updater **/
    define('FS_METHOD', 'ssh2');

    設定を変えようと思ったのは、SSH2でのアップデートが失敗するようになったのが原因。プラグインの過去の設定と競合して、機能しなくなるとは。コンフィグまでちゃんと見直す必要はある。

  • WordPress5.6にしたら、投稿画面がエラーになった

    WordPress 5.6にアップデートしたら、投稿画面の表示でエラーになった。ブラウザの画面には、エラーになったことしか表示されないので、詳しいエラー内容をコピーして確認した。

    確認したところ、Javascriptばかりがエラーになっていた。なので、ブラウザのキャッシュに残っているものが悪さをしている。ブラウザのキャッシュを削除して、再度Wordpressの管理画面にアクセスしたところ、正常に投稿画面が使えるようになった。このアップデート後の問題は、忘れたことに発生するので、少しびっくりする。

    エラー内容は下記。

    TypeError: Object(...) is not a function
        at WithSpokenMessages(WithInstanceId(WithFilters(n))) (https://www.xenos.jp/xxxxxxx/wp-includes/js/dist/components.min.js:7:280912)
        at we (https://www.xenos.jp/xxxxxxx/wp-includes/js/dist/vendor/react-dom.min.js:84:293)
        at zj (https://www.xenos.jp/xxxxxxx/wp-includes/js/dist/vendor/react-dom.min.js:226:496)
        at Th (https://www.xenos.jp/xxxxxxx/wp-includes/js/dist/vendor/react-dom.min.js:152:223)
        at tj (https://www.xenos.jp/xxxxxxx/wp-includes/js/dist/vendor/react-dom.min.js:152:152)
        at Te (https://www.xenos.jp/xxxxxxx/wp-includes/js/dist/vendor/react-dom.min.js:146:151)
        at https://www.xenos.jp/xxxxxxx/wp-includes/js/dist/vendor/react-dom.min.js:61:68
        at unstable_runWithPriority (https://www.xenos.jp/xxxxxxx/wp-includes/js/dist/vendor/react.min.js:26:340)
        at Da (https://www.xenos.jp/xxxxxxx/wp-includes/js/dist/vendor/react-dom.min.js:60:280)
        at Pg (https://www.xenos.jp/xxxxxxx/wp-includes/js/dist/vendor/react-dom.min.js:61:14)
  • WP Mail SMTP でエラーになる

    WordPressからメールを送るために、プラグインのWP Mail SMTPを入れた。送信先をMicrosoft365にしようとしたところ、Proのライセンスが求められるので、その設定を使うのは断念。

    次に、「Other SMTP」を指定して、SMTPを「smtp.office365.com」を指定して、実在するユーザを使ったが下記のエラーが出て失敗した。

    2020-12-03 03:34:42 SERVER -> CLIENT: 535 5.7.3 Authentication unsuccessful [xxxxxxxxxxxxx.namprd18.prod.outlook.com]
    2020-12-03 03:34:42 SMTP ERROR: Password command failed: 535 5.7.3 Authentication unsuccessful [xxxxxxxxxxxxx.namprd18.prod.outlook.com]
    SMTP Error: Could not authenticate.
    2020-12-03 03:34:42 CLIENT -> SERVER: QUIT

    接続は行えているが、ユーザの認証ではじかれているので、Microsoft365側のセキュリティ設定でエラーになっている。接続先のSMTPサーバを、MXレコードで設定しているものに変えてみたが、これもエラーになる。

    わかったことは、フリーのWP Mail SMTPだと、Microsoft365(Office365)を使ってメール送信はできない。

  • Crayon Syntax Highlighterが使えない

    WordPressとPHPをアップデートしていったところ、ずっと使っていた「Crayon Syntax Highlighter」が使えなくなってきた。いつからかは覚えていないが、今のPHP7.3では、変換してほしくない「<」やスペースを勝手に変換するようになった。

    最初は、修正していたけれど、だんだんとストレスがたまってきた。なので、プラグインを消した。長いことお世話になったけれど、ストレスがたまるのだから、諦める。別のものを探さなければ。

  • 今、一番使われているCMSトップ20位

    メモ。今、日本で一番使われているCMSのトップ20位の記事。

    https://mtame.jp/martec/CMS_introduction/

    今のCMSは、圧倒的にWordpressが多い。20数倍の差をつけられて、2位がMovable Type。あとは、聞いたことのあるものもあれば、聞いたことすらないものがたくさん。機能特化型のCMSもあるようで、面白い。

  • WordPressのcocoonテーマでエラーが出る

    WordPressのcocoonテーマで、下記のエラーが表示される。

    /wp-content/themes/cocoon-master/lib/open-graph.php(356)
    

    調べると、curlを使った処理でエラーになっていた。PHPのモジュールでcurlが入っているかみたところ、インストールされていなかった。FreeBSDのパッケージからcurlのモジュールをインストールして、apacheを再起動した。これで、解決した。

     pkg install php73-curl
    
  • WordPressのアップデート時に「Maximum execution time」が発生する

    WordPressのアップデート時に、下記のエラーが発生する。

    Fatal error: Maximum execution time of 30 seconds exceeded in /usr/xxxxxx/xxxxxx/blog2/wp-content/plugins/ssh-sftp-updater-support/phpseclib/Crypt/Base.php(2554) : eval()'d code on line 563
    

    いろいろと調べたところ、実行時間の問題のようなので、PHPの最大時間を変更する。php.iniを編集し、「max_execution_time」の値を30から60に変更して、apacheを再起動。

    ;変更前
    ;max_execution_time = 30
    ;変更後
    max_execution_time = 60
    

    実行時間を最大30秒から60秒に増やしたが、それでもギリギリだった。PHP7にしたため、いろいろと重くなっているのかもしれない。