wordpressの技術情報をメモしたサイトです。

管理画面のカスタマイズで表示オプションを非表示での対応

管理画面のカスタマイズで表示オプションを非表示した場合、マルチサイトなどで登録ユーザーが表示オプションの項目を使いたい場合の対応で

表示オプションの全項目をまず表示させます。

その中から使わない項目だけを非表示にすれば、使いたい項目が常に表示されます。

こちらのサイトを参考にさせて頂きしました。

http://kachibito.net/wordpress/best-collection-of-code-for-your-functions.html

functions.phpに書き込んで下さい。

</pre>
<p>function all_settings_link() {<br /> add_options_page(__('All Settings'), __('All Settings'), 'administrator', 'options.php');<br /> }<br /> add_action('admin_menu', 'all_settings_link');</p>
<pre>

ブログに雪を降らせる

よく、ジャパスクリプトでheadにscriptコードを貼り付けすればブログに雪を降らせることができるが、

季節的なものでそのためにheadに設定するのはちょっとめんどくさい。

wordpressのプラグインでもいくつかありますが、今回紹介するのは先日導入したjetpack

http://minnanohiroba.jp/takasan99/jetpack-by-wordpress-com%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3-355

に雪を降らせる機能があことが分かりました。

wordpress.comと連携した時点で、「設定」⇒「一般」を開くと、下の方に下図のようなチェック項目が現れます。

yuki1

チェックして更新するとブログに雪を降らすことができるようになります。

yuki2

あと、マウスを左右に動かすと雪の降る方向が変わります。

jetpackも面白いですね!!

Wndows Live Writerからwordpressに投稿

microsoftから無料で使えるWindows Live Writer

http://www.microsoft.com/ja-jp/download/details.aspx?id=8621

で、wordpressに投稿してみた。

パソコンからソフトを立ち上げるだけでログインしなくても投稿できるので便利かもしれない。

また、専用のプラグインが開発されていて機能がおもしろい。

例えば、URLを入力するだけで、リンク付のサイト画像を表示してくれたり、

このように画像をアルバム風にできたり、

[inline][script async src=”//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js”][/script]


[script]
(adsbygoogle = window.adsbygoogle || []).push({});
[/script][/inline]

adsenseを登録しておくと記事に貼り付けすることが可能になります。

livewriter

投稿画面は分かりやすく使いやすいのですぐになれると思います。

しばらくこちらから投稿してみようと思います。

jetpack by wordpress.comプラグイン

jetpack by wordpress.comプラグインを使ってみた。

http://jetpack.me/

taka-jet

なぜかと言うと、

外部の自分のブログの記事をFeedWordpressでこちらの自分のブログに連携(自動投稿)させる設定をしたところ

記事が投稿されるとtwitter&facebookに自動投稿するプラグイン(一般にあるプラグイン)

では、facebook用のプラグイン(wordbooker)はfacebookに自動投稿されるがtwitter(wordtwit)はどうしても投稿されない。

他のプラグインも難しい、そこで、jetpackにしてみた。

jetpackはいままでお試しで触り程度使ったことがあったが他のプラグインで間に合っていたので必要が無かった。

導入してみると、なんか使いやすいぞ!

特に、SNS設定では余計なAPI登録もなく承認すれば自動投稿されるので素人にはもってこいだ!

機能も増えている。

モバイルテーマ表示

メール投稿

メール通知

これ一つである程度の事は出来てしまうではないか

ただ、wordpress.comへの登録と連携が必要になってくるのがありますが・・・

もっと便利にはなりそうです。

taka-jet-sns

http://jetpack.me/

facebookへの自動投稿の画像設定とOGP設定

まず、OGPとはOpen Graph protocolの略で、facebook・mixi・google+などのソーシャルメディアにサイト(ブログやホームページ)の投稿記事の内容を正確に表示させるもの ブログの自動投稿やブログ記事をシェアしたりするとリンクやタイトル、写真を付けて内容の抜粋を表示するあれです。

この情報をブログやホームページから投稿した場合正しく表示されないで画像やタイトル、内容がおかしい場合ってないでしょうか!! それを正しく表示させる事ができるのがOGPです。 OGPを設定すると正確な情報や画像を表示されるだけではなくfacebookでは、ブログやホームページからいいね!をした場合にニュースフィールドに記事を表示するようになります。さらに、その記事をいいね!するとそのいいね!した人の友達にも記事を表示します。 こちらの方のサイトを参照して下さい。http://www.lastday.jp/2012/04/19/ogp-is-important そのことにより、より多くの人に記事を見てもらえる事が可能になります。 ということで、 <head></head>間に以下の内容を記載する事で正確な情報を表示させます。

<meta content="記事のタイトル" /><meta content="article" /><meta content="記事の説明" /><meta content="記事のURL" /><meta content="画像のURL" /><meta content="サイトのタイトル" /><meta content="言語" /><meta content="facebookのアプリID" /> 

wordpressでは、プラグインに「Open Graph Pro」というプラグインがあります。 それを使って設定をすれば自動で<head>内に表示してくれます。 まず、facebook Developers appより新規設定してAppIDを取得します。

wordpressにプラグインを設定し有効すると右メニューの設定からOpen Graph Proを選択します。

Admin User IDはこちらを参考に!!http://ten-fingers-and-a-brain.com/wordpress-plugins/ogp/facebook-id/ Open Graph Proプラグインを設定し変更を保存でOGPの設定が終了します。 次に、画像を3倍大きくする設定をします。 通常、wordpressではディフォルトではサムネールが150px×150pxになっています。 wordpress管理画面の設定からメディアをクリック、サムネイルのサイズの大きさを200px×200pxに変更します。

詳しくはこちらの方のサイトを参考にしてください。http://gaiax-socialmedialab.jp/facebook/172 以上で設定終了ですが、wordoressの自動投稿プラグインでwordbookerを使っている場合facebookのデバッガーを行ったときにURLの重複や画像の表示などのエラーが発生してしまいます。 wordbookerはディフォルトでOGPを設定していますので重複してしまいます。また、wordbookerのOGPは何かとエラーが出やすいのでwordbooker側でOGPを使わない設定にしてしまいましょう。

図のように上級者向け設定の「オープングラフタグのインラインプロダクションの利用不可」の項目にチェックを入れることによりOGPをOFFにできます。 サイトを表示してプログラムのソースを確認してください。

カスタムフィールドから誕生日を入力して経過時間などの関数の設定

カスタムフィールドプラグイン(CustomFieldGuiUtility)を使って各ユーザーが誕生日を入力してもらいそのデーターから時間に関するphp計算式の覚え書きです。 ますは、入力データを関数に変換します。

//誕生日の西暦・月・日
&lt;?php 
$by = post_custom('birthday_y');
$bm = post_custom('birthday_m');
$bd = post_custom('birthday_d');
//現在の西暦・月・日・
$ty = date(&quot;Y&quot;);
$tm = date(&quot;m&quot;);
$td = date(&quot;d&quot;);
?&gt;

 

年齢を算出する関数

  &lt;!--?php 
function calc_age($birth)
{
list($by, $bm, $bd) = explode('-', $birth);
$age = $ty - $by;
if($tm * 100 + $td &lt; $bm * 100 + $bd) $age--;
return $age;
}
print calc_age(&quot;$by-$bm-$bd&quot;);
?--&gt;

 

お誕生日までの日数

&lt;!--?php 
$tuki = $bm ;
$niti = $bd;&lt;br ?--&gt;&lt;br /&gt;$one_day = 60 * 60 * 24;
$this_y = date(Y);&lt;br /&gt;&lt;br /&gt;$t1 = time();
$t2 = mktime(0, 0, 0, $tuki, $niti, $this_y);&lt;br /&gt;&lt;br /&gt;if ($t1 &lt; $t2) {&lt;br /&gt;&lt;br /&gt;$remain_day = ceil (($t2 - $t1) / $one_day);
echo ($remain_day);&lt;br /&gt;&lt;br /&gt;} else {&lt;br /&gt;&lt;br /&gt;$next_y = ++$this_y ;
$t3 = mktime(0, 0, 0, $tuki, $niti, $next_y);
$remain_day = ceil (($t3 - $t1) / $one_day);&lt;br /&gt;&lt;br /&gt;$tukihi1 = date ('Ymd', $t1) ;
$tukihi2 = date ('Ymd', $t2) ;
$remain_day = ($tukihi1 != $tukihi2) ? $remain_day : 0;&lt;br /&gt;&lt;br /&gt;echo ($remain_day);
}
?&gt;

 

生まれてからの経過日数

&lt;!--?php 
$t1 = mktime(0, 0, 0, $bm, $bd, $by);
$t2 = time(); //現在のタイムスタンプ
$one_day = 60 * 60 * 24; //1日の秒数
echo ($t2 - $t1) / $one_day; //2007年1月1日からの経過日数
// =--&gt; 234.69549768519
?&gt;

 

小数点以下なし日にちのみ

&lt;!--?php 
$today = mktime(0, 0, 0, gmdate(&quot;m&quot;), gmdate(&quot;d&quot;), gmdate(&quot;Y&quot;));
$start = mktime(0, 0, 0, $bm, $bd, $by);
$keika = (int)(($today - $start) / 86400);
echo ($keika);
?--&gt;

 

いろんなサイトからの引用になります。 いろいろ試してみてこの以上の関数が一番上手く動きました。

wordpressログインをしないと記事が見れない設定

wordpressでログインしないとサイト全体を見ることが出来ない設定の覚え書きです。 以下のタグをfunctions.phpに貼り付けすればログインしないと見れなくなります。

/* ログインユーザーのみ閲覧させるための記述 */
function require_login() {
if ( ! is_user_logged_in() &amp;amp;amp;&amp;amp;amp; ! preg_match( '/^(wp-login.php|async-upload.php)/', basename( $_SERVER['REQUEST_URI'] ) ) &amp;amp;amp;&amp;amp;amp; ! ( defined( 'DOING_AJAX' ) &amp;amp;amp;&amp;amp;amp; DOING_AJAX )  &amp;amp;amp;&amp;amp;amp; ! ( defined( 'DOING_CRON' ) &amp;amp;amp;&amp;amp;amp; DOING_CRON ) ) {
auth_redirect();
}
}
add_action( 'init', 'require_login' );