ご相談・お問い合わせはこちらから

投稿コンテンツがデバイス毎に切り替えられる新機能「Display Switcher」がWordPressプラグイン「Multi Device Switcher」に加わりました

デバイス毎にテーマを切り替える WordPressプラグイン「Multi Device Switcher」をアップデートしました。

アップデート内容は2つあります。

デフォルトのユーザーエージェント更新

デフォルトのユーザーエージェントを更新しました。いままで アンドロイド端末は、Android OS が搭載されているスマホとタブレット端末の両方がスマートフォン用テーマに切り替えられていました。

そのため、WordPressプラグイン「Multi Device Switcher」でAndroidスマホとタブレット端末のWordPressテーマ切り替え方法 を参考に手動でユーザーエージェントを設定してもらっていましたが、今回の更新でデフォルトでスマホとタブレット端末別々にテーマが切り替わるように見直しました。

コンテンツがデバイス毎に切り替えられるショートコード「Display Switcher」

「Multi Device Switcher」のデバイス判定を用いたショートコードでコンテンツの切り替えができるようになりました。

設定は、WordPressの投稿画面のエディター上でショートコード [multi]を使うだけ。device属性にデバイスの名前を付けるとそのデバイスで見たときだけショートコードで設定したコンテンツが表示されます。device属性になにも付けない場合は PC の時だけコンテンツが表示されます。Custom Switcherにも対応。device属性に Custom Switcher の名前を付けるとちょうどよい具合にコンテンツが切り替わってくれます。

[multi]PCで見ている時に表示します[/multi]
[multi device="smart"]スマホで見ている時に表示します[/multi]
[multi device="tablet"]タブレット端末で見ている時に表示します[/multi]
[multi device="test"]Custom Switcherでもコンテンツが切り替わります[/multi]

CSSだけでコンテンツの表示非表示をすると検索エンジンからテキスト非表示でスパム的になる可能性をはらんでしまうことを避けるために切り替えたり、コンテンツや画像をスマホ用などデバイス毎に最適化したり、投稿やコンテンツ制作に是非活用してみてください。


Download:

WordPress のプラグインページからどうぞ。

Installation:

WordPress プラグイン「Multi Device Switcher」のインストール詳細はこちらからどうぞ。

Code Repository:

thingsym / multi-device-switcher (GitHub)

Licenses:

Licensed under GPL version 2.0

Donationware:

よろしければ、開発とメンテナンスのために寄付していただければうれしいです。

Donationware

ページの先頭へスムーズに戻る WordPressプラグイン「Back to the Top」をリリースしました

去年 2014年10月に jQuery プラグイン「Back to the Top」 をリリースしました。今回、そのWordPressプラグイン版をちょこちょこ作ってリリースしてみました。

jQueryプラグイン版は、jQueryを読み込んだり、HTMLを用意したりと、いろいろ設定が必要になります。オプションがたくさんあるのでカスタマイズが自在にできます。反面、設定が煩わしかったりします。

WordPressプラグイン版は、WordPressにインストールして有効化すると、もろもろデフォルトで設定してくれてそのまま使えます。カスタマイズもオプションページでプレビューを見ながらかんたんに設定できるように作ってみました。

screenshot-backtothetop.png

カスタマイズは、ラベルに Webフォントを採用したアイコンが選べたり、スクロールの動き (easing) も。また、上級者向けにスタイルシートがカスタマイズできます。

インストールは、WordPressプラグインページから。または、管理画面のプラグインの新規追加から「Back to the Top」で検索してインストールできます。

WordPressプラグインのインストール方法は「プラグインをインストールする - WordPressマニュアル」を参考にどうぞ。

WordPressプラグイン「Jetpack」のCDN「Photon」をWordPressテーマ・プラグインに実装するスニペット

WordPress プラグイン「Jetpack」にCDN (Contents Delivery Network) で画像を配信する「Photon」があります。「Photon」を使うと、画像配信の分散ができ、サーバの負荷分散やサイトの表示パフォーマンスの向上に繋がります。

「Photon」 は、WordPress.com で使われていたり、自分でホストしている WordPress サイトにプラグイン「Jetpack」をインストールすることで導入できます。

「Photon」の導入は、プラグイン「Jetpack」の「Photon」を有効化するだけで CDN で画像配信されます。

画像配信されるのは、サムネイル画像やアイキャッチ画像だけで、「Photon」で配信されない画像もあります。たとえば、ご自身でテーマやプラグインをカスタマイズしたり、開発した場合。img タグで埋め込んだりすると、画像が「Photon」に対応した形にならないのでうまく配信されません。こういう場合も Photon API が用意されているので、対応ができます。

以下のスニペットで 「Photon」を有効化していると、画像URLを元に Photon用URL を生成して画像配信してくれます。

$image_url = class_exists( 'Jetpack' ) && method_exists( 'Jetpack', 'get_active_modules' ) && in_array( 'photon', Jetpack::get_active_modules() ) ? 'http://i' . mt_rand( 0, 2 ) . '.wp.com/' . str_replace( array( 'http://', 'https://' ), '', esc_attr( $image_url ) ) : esc_attr( $image_url );

「Photon」を利用する場合、WordPress.com を使っているか、WordPress サイトにプラグイン「Jetpack」をインストールしている場合に限りますと、利用規約にあるのでご注意を。

WordPressプラグイン「Multi Device Switcher」をアップデートしました。

今回の WordPressプラグイン「Multi Device Switcher」アップデートは、is_disable_switcher(), is_pc_switcher() の2つの関数を追加しました。

これまでのアップデートでデバイスの判定に is_multi_device関数を使ってコンテンツを出し分けたり、JavaScript でのデバイス判定を使った WordPressテーマのカスタマイズが可能です。

今回も is_disable_switcher(), is_pc_switcher() の2つの関数の追加でさらに詳細な状態のデバイス判定ができるようになりました。テーマを編集してコンテンツを出し分けたり、function.php で WordPressのオプション設定を切り替えたりできます。

is_multi_device(), is_disable_switcher(), is_pc_switcher() の3つ関数でテーマのカスタマイズができる環境を整えてみました。

サンプルコード

たとえばスマートフォンでアーカイブの投稿表示件数を 10 件にする場合、スマートフォンで表示するテーマの function.php にこんな感じで書いて。ってことができます。

if ( function_exists( 'is_multi_device' ) && function_exists( 'is_pc_switcher' ) ) :

function custom_posts_per_page_count( $query ) {
    if ( is_multi_device('smart') && ! is_pc_switcher() ) {
        if ( $query->is_main_query() ) {
            set_query_var( 'posts_per_page', 10 );
        }
    }
}
add_action( 'pre_get_posts', 'custom_posts_per_page_count' );

endif;

以上、テーマのカスタマイズで是非活用してみてください。


is_pc_switcher() function

is_pc_switcher() function is a boolean function, meaning it returns either TRUE or FALSE. Return the the state of PC Switcher by the Multi_Device_Switcher class. Return true if the theme has switched by the PC Switcher.

Usage

<?php is_pc_switcher(); ?>

Example

<?php
if ( function_exists( 'is_pc_switcher' ) ) {
    if ( is_pc_switcher() ) {
        /* Theme switched by the PC Switcher. Display and echo specific stuff here */
    } else {
        /* Display and echo specific stuff here */
    }
}
?>

Parameters

None

Return Values

(boolean) Return the state of PC Switcher.

is_disable_switcher() function

is_disable_switcher() function is a boolean function, meaning it returns either TRUE or FALSE. Return the state of disabled by the Multi_Device_Switcher class.

Usage

<?php is_disable_switcher(); ?>

Example

<?php
if ( function_exists( 'is_disable_switcher' ) ) {
    if ( is_disable_switcher() ) {
        /* Disabled. Display and echo specific stuff here */
    } else {
        /* Display and echo specific stuff here */
    }
}
?>

Parameters

None

Return Values

(boolean) Return the state of disabled.


Download:

WordPress のプラグインページからどうぞ。

Installation:

WordPress プラグイン「Multi Device Switcher」のインストール詳細はこちらからどうぞ。

Code Repository:

thingsym / multi-device-switcher (GitHub)

Licenses:

Licensed under GPL version 2.0

Donationware:

よろしければ、開発とメンテナンスのために寄付していただければうれしいです。

Donationware

Perl6のプログラミング環境「Rapid Perl6」を作りました

バージョン1.0 を今年 2015年 のクリスマスにリリースすると発表があった Perl 6.0。かれこれ 10 年以上開発していてなかなかリリースされなかったがようやく形になりそう。

一足早くその Perl 6 のプログラミング環境をサクッと立ち上げられる Vagrant 環境をつくりました。

Perl 6 は言語仕様も変わり、Perl 5 など前バージョンの後方互換性もないので、新しい言語と見ていろいろいじってみたい方はどうぞ。

以下、GitHub にある Rapid Perl6 の readme-ja.md です。


Rapid Perl6

Rapid Perl6 is Vagrant environment for the Perl 6 programming language.

Provisioning

# install Vagrant plugin
vagrant plugin install vagrant-hostsupdater

cd rapid-perl6
vagrant up

...

vagrant ssh

Version

cd /home/vagrant/perl6/bin
./perl6 -v
This is perl6 version 2015.01-194-g5bb1942 built on MoarVM version 2015.01-72-g9106bee

OR

cd /home/vagrant/perl6/bin
./perl6 -V
...

Help

cd /home/vagrant/perl6/bin
./perl6 -h

hello world!

cd /home/vagrant/perl6/bin
./perl6
> say 'hello world!';
hello world!
> exit;

hello world! (helloworld.pl)

#!/usr/bin/env perl6
say q/hello world!/;
1;

Run helloworld.pl

cd /home/vagrant/perl6/bin
./perl6 /vagrant/helloworld.pl
hello world!

Reference

新しいサービスのアイデアに役立つデベロッパーブログです。IT/Web技術メモや問題解決策、開発に役立つTips、作ったソフトウェアやツールの紹介。

プロフィール

Thingsym (シングスワイエムと発音します)

ウェブサービスをつくってアイデアをカタチにしているWebエンジニア・デベロッパー。経営者のための顧問サービスやWordPressテーマ販売サービスで経営課題の解決と事業の成長をマーケティングやマネジメント面でサポート。事業開発に取り組んで新しい価値を生み出すビジネスモデルの構築をしています。

最近のテーマは創造性 (creativity)、マーケティング (marketing)、マネジメント (management)

グローバルブログ (英語)

Twitter, GitHub, WordPress

最近のコメント

  • 先ほどupdateして、問題なく動作する (kome)
  • ご報告ありがとうございます。 本日バグ修 (thingsym)
  • キャッシュ系のプラグインをWordPre (thingsym)
  • ご報告ありがとうございます。見直してみま (thingsym)
  • Multi Device Switche (golorih)
  • 素晴らしいプラグインありがとうございます (ゆき)
  • はじめまして、いつも大変便利に使わせてい (kome)
  • こんにちは 最新バージョンのMulti (なお)
  • 簡潔に書かれていてしかも高機能なスクリプ (nlogn)
  • 環境が悪いのか、スマートフォン(モバイル (まる)
ページの先頭へ