Thunderbird のメール誤送信防止のため Confirm-Address アドオン(メール送信時にメアドをチェックさせる)を入れていたが
Thunderbird を 45.0 にアップデートした途端に、Confirm-Address から送信を押してもメール送信されない不具合が発生。
これが原因とわかるまでちょっと苦労した。Confirm-Address を無効にしたら送信できたので、これと特定。
ここ に修正版が上がっていたので
xpi ファイルをダウンロードして
[ツール] → [アドオン] → [▼] → [ファイルからアドオンをインストール(I)…] で先ほどのファイルを指定して を押下。
新しい Confirm-Address では正しく送信することが出来た。めでたしめでたし。
ずーっと問題なかったけれど、Thunderbird 52.0.1 に上がった途端にまたもやメールが送信できない現象が発生。
[送信] を押してもうんともすんとも言わない。
原因はやはり confirm-Address。というか、52.0.1 は動かなくなるアドオンが最大の最悪アップデートっぽい。
対処方法としては一旦古い Confirm-Address を消してから confirm-address_1.2.9.3a.xpi をダウンロードして
ファイルからインストールする。これで前の様に宛先チェックもメール送信もできる。
同様に Chack and Send というメール送信確認ができるアドオンもあるけれど、
これも現時点では 52.0.1 上では設定画面の OK が押せずに設定が保存できない。
# もうThunderbird 標準で宛先チェックの機能を持てばいいのに。
]]>とりあえず持ってる WordPress 環境は対処済み。
]]>いいねぇ
ここも重要な備忘録満載なのでクラッシュすると怖い。
定期的にDBのバックアップは取っているけど、
できればミラーリング環境を用意したい。
こんな時どうしたらいいかわからないの。
そんな時に WordMove を使えば良いと思うよ。
まあ、まだ使ってはいないんですけどね(笑)
忘れないように取り急ぎ、記事にしておきます。
というわけで、1つのPHPファイルでDB管理できる adminer を使ってみた。
単純に使うだけなら Adminer バージョン .php をダウンロードして adminer.php にリネームしてサイトに放り込めばOK。
mysql しか使わないなら for MySQL を使えば、更に小さい。多言語を使わない英語版ならもっともっと小さい。
今回は、MySQL と PostgreSQL の多言語版を使おうと思ったけれど 414KB と意外に大きい。
ならば!! と Source codes を落としてきて、adminer/include/lang.inc.php の $langs 配列要素を ‘English’ と ‘日本語’ 以外削除。
その後、compile.php を実行して英語・日本語のみバージョンを作成。サイズは 288KB。ほぼ、英語のみバージョンと同じサイズになった。
これで、PHP7 + MySQL 5.0 でも管理ツールが使えるようになったよ。
WindowsやMacで使えて、GUIで Apache を入れるとか、MySQL を入れるとか Wifi の設定なんかを
ブロック単位で細かく指定していって、
一気にSDカードに書き込むと、それに合わせた Raspberry Pi がセットアップされるというものらしいです。
コマンドライン叩くのが苦手な人には朗報かも
]]>ii php-apc 4.0.7-1 all APC User Cache for PHP 5 (transit ii php-gettext 1.0.11-1 all read gettext MO files directly, w ii php-tcpdf 6.0.093+dfsg all PHP class for generating PDF file ii php5 5.6.24+dfsg- all server-side, HTML-embedded script ii php5-apcu 4.0.7-1 armhf APC User Cache for PHP 5 ii php5-cli 5.6.24+dfsg- armhf command-line interpreter for the ii php5-common 5.6.24+dfsg- armhf Common files for packages built f ii php5-gd 5.6.24+dfsg- armhf GD module for php5 ii php5-json 1.3.6-1 armhf JSON module for php5 ii php5-mcrypt 5.6.24+dfsg- armhf MCrypt module for php5 ii php5-mysql 5.6.24+dfsg- armhf MySQL module for php5 ii php5-readline 5.6.24+dfsg- armhf Readline module for php5
php5 関連を削除
$ apt-get remove php5*
以下のパッケージは「削除」されます: libapache2-mod-php5 php-apc php-gettext php-tcpdf php5 php5-apcu php5-cli php5-common php5-gd php5-json php5-mcrypt php5-mysql php5-readline phpmyadmin
先頭に rc とついていれば削除されている。
rc php5-apcu 4.0.7-1 armhf APC User Cache for PHP 5 rc php5-cli 5.6.24+dfsg-0+deb8u1 armhf command-line interpreter for the php5 scripting language rc php5-common 5.6.24+dfsg-0+deb8u1 armhf Common files for packages built from the php5 source rc php5-gd 5.6.24+dfsg-0+deb8u1 armhf GD module for php5 rc php5-json 1.3.6-1 armhf JSON module for php5 rc php5-mcrypt 5.6.24+dfsg-0+deb8u1 armhf MCrypt module for php5 rc php5-mysql 5.6.24+dfsg-0+deb8u1 armhf MySQL module for php5 rc php5-readline 5.6.24+dfsg-0+deb8u1 armhf Readline module for php5
php7.0 のリポジトリを登録
$ sudo vi /etc/apt/sources.list ファイルの最後に以下の行を追加 deb http://repozytorium.mati75.eu/raspbian jessie-backports main contrib non-free $ sudo gpg --keyserver pgpkeys.mit.edu --recv-key CCD91D6111A06851 $ sudo gpg --armor --export CCD91D6111A06851 | sudo apt-key add - $ sudo apt-get update
apt-get install php7.0 php7.0-mysql php7.0-gd php7.0-mbstring php7.0-curl php7.0-xml php7.0-xmlrpc
apt-get install php php-mysql php-gd php-mbstring php-curl php-xml php-xmlrpc (自動的に php7.0 系がインストールされる)
でインストール
なんか立ち上げなおしたら「お使いのサーバーの PHP では WordPress に必要な MySQL 拡張を利用できないようです。」とか出た。
apache を入れ直したりガチャガチャやっていたのだが、apache のログを見たら Exec-php が悪さをしていた。
php7.0 用のパッチを宛てたら立ち上がった。
うん。前より早くなってるね。DBアクセスは相変わらずだけど。
WordPress もプラグインもほぼ問題なく動いてイルっぽい。
多少スピードアップもした感じ。
ただし、Exec-PHP だけはそのままでは動かない。
Parse error: syntax error, unexpected ‘new’ (T_NEW) in wp-content/plugins/exec-php/exec-php.php on line 22
とか出るので
$GLOBALS[‘g_execphp_manager’] =& new ExecPhp_Manager();
↓
$GLOBALS[‘g_execphp_manager’] = new ExecPhp_Manager();
の様に修正する。同様に、
wp-content/plugins/exec-php/includes/ にある manager.php、admin.php、cache.php、ajax.php 内に記述されている
=& も = に置換すると動くようになる。
これは phpversion() の結果 → 7.0.16
まあ Exec-PHP は使うなってことだね。便利なんだけどな。
]]>先ずどこで動かすかということで、テーマに含まれる functions.php で action を追加。
実際のアクションの内容は、同じタイトルをグループ化して最小のIDを持つレコード以外を削除する感じ
function duplecate_delete() { global $wpdb; $wpdb->query( "DELETE FROM {$wpdb->prefix}posts WHERE {$wpdb->prefix}posts.ID NOT IN ( SELECT min_id FROM ( SELECT MIN(t1.ID) AS min_id FROM {$wpdb->prefix}posts AS t1 WHERE t1.post_type = 'post' GROUP BY t1.post_title ) AS t2 ) AND {$wpdb->prefix}posts.post_type = 'post'"); } add_action('init', 'duplecate_delete', 1);
テーマを更新すると functions.php も初期化される場合もあるので備忘録として残しておこう。
]]>10, 'paged' => $paged, 'orderby' => 'post_date', 'order' => 'DESC', 'post_type' => 'post', 'post_status' => 'publish' ); $the_query = new WP_Query($args); if ($the_query->have_posts()) : while ($the_query->have_posts()) : $the_query->the_post(); ?>max_num_pages > 1) { echo paginate_links(array( 'base' => get_pagenum_link(1) . '%_%', 'format' => 'page/%#%/', 'current' => max(1, $paged), 'total' => $the_query->max_num_pages )); } wp_reset_postdata(); ?>
ちなみに、投稿へのリンクは p=投稿ID を指定する。
投稿のタイトル
the_content の代わりに the_excerpt を使うと抜粋(55単語で切れて最後に […]) が表示される。
]]>原因は
if(function_exists("register_field_group")) { register_field_group(array ( 'id' => 'acf_%e5%95%86%e5%93%81', 'title' => 'タイトル', 'fields' => array ( :
と、ID が化けていたため。ここを
'id' => 'acf_additional-custom-fields',
の様に書き換えてやれば正しく表示されるようになった。
そんなのわからんわ(笑)
]]>