最長一週間だけしか保存出来ないメモ帳「168memo」をリリース

 

新年一発目ですが、昇り龍に反するような適当なウェブサービス「168memo」をリリースしました。

 

最長一週間だけ保存出来る無料のウェブメモ帳です。保存期間を過ぎると勝手に消えます。適当に使って下さい。

(さらに…)

【WordPress】メールアドレスからユーザーIDを取得する

業務で会員向けサイトを作っているのですが、ユーザーのメールアドレスからユーザーIDを取得したくなりました。

なんか上手い方法は無いものかと検索をかけてみたところ、get_user_id_from_stringという関数が引っかかりました。
参考:get_user_id_from_string()

(さらに…)

WordPressの外部リンクにクッションページを挟むプラグイン

「jump.php」などでおなじみですが、外部のサイトに遷移する前に「外部サイトに移動します」とか画面に表示されるムカつくアレです。
参考:http://www.hs-sec.co.jp/bluesky_net/pagejump_minkai.htm

神ならぬ身の知る由もない何らかの理由や、あるいはクライアントの希望により「どうしてもクッションページが必要なんだ!無理だと言うなら死ぬ!!」と言われてもWordPressなら大丈夫。以下のWordPressプラグインを使えば特にコードを修正することなく全ての外部リンクにクッションページを挟むことができます。
※ただし、テンプレートに直接書き込んだ外部リンクは無理。

WP No External Links

(さらに…)

【WordPress】カスタム投稿タイプの表示数を取得する

カスタム投稿タイプで記事の一覧ページを作ってたのですが、とある事情から表示される記事の最大数が必要になったため、WP_Queryのリファレンスを参照したところ以下のプロパティで得られることが分かりました。(カスタム投稿タイプに限定した話じゃありませんが)

$post_count //表示される投稿の数。

こんな感じで使います。

<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$wp_query = new WP_Query( array( 'post_type' => 'custom_post_type_name', 'posts_per_page' => -1, 'paged' => $paged ) ); ?>

<p>投稿の表示数:<?php echo $wp_query->post_count; ?></p>

<?php while ( $wp_query->have_posts() ) : $wp_query->the_post(); ?>
…
<?php endwhile; ?>

あるいは単純に以下の関数でも取れるらしい。

wp_count_posts('カスタム投稿タイプ');

参考:wp_count_posts

【WordPress】管理者以外のユーザーが管理画面にアクセスしたらリダイレクトさせる方法

例えば、WordPressでちょっとした会員向けサイトなんかを作ったとして、とりあえずメンバーにログインだけはしてもらいたいけど管理画面(wp-admin以下)はアクセスしてほしくないよーという場合、以下のコードを「functions.php」に突っ込んでおけば管理者以外のユーザーが管理画面アクセスしたとき、トップページなどにリダイレクトさせることができます。

add_action( 'admin_init', 'disable_admin_pages' );
function disable_admin_pages() {
	if(!current_user_can('administrator')){
		$redirect_url = get_option('home');
		header("Location: ".$redirect_url);
		exit;
	}
}

アクションフックを使うといろいろ出来て面白い。

参考:WordPress アクションフック一覧

【WordPress】get_users関数でユーザーの一覧を取得する

追記(2012.11.16):

一年ぶりに必要になったので参照したら、いくらやっても「投稿者」の一覧が取得できない。
で、よく見たら「contributor」=「寄稿者」だという事に気付いたため修正しました。これまでに参照していただいた方にはすみません。

特定の権限を持つユーザーの一覧が表示したくて色々探し回ってたのですがバージョン3.1から関数が追加されていました。

こんな感じで使えば「投稿者」「寄稿者」権限を持つユーザーの一覧が取得できます。

$users = get_users('role=contributor');
foreach ($users as $user) {
	$user_name = $user->user_login;
	$user_id = $user->ID;
	echo $user_name."(ID:".$user_id.")
"; }

会員サイトなんかで使えそう。

参考:Function Reference/get users « WordPress Codex

WordPressでアップロードしたメディアのリンクURLをデフォルトで「ファイル」にする

投稿やページなんかで画像などのメディアをアップロードすると、環境によってメディアのリンクが「投稿のURL」とかになったりするみたいで(と言うかなっていたので)、いちいち「メディアのアップロード」→「ファイルのURL」をクリックするのも煩わしくなり、何か方法は無いものかと検索してみたら海外のフォーラムで見つかりました。

以下のコードをテーマディレクトリの「functions.php」に突っ込んでやるとメディアのリンクURLが標準でファイルになります。

update_option('image_default_link_type','file');

参考:Why are images linked by default?

Custom Post Type UI プラグインで featured image にチェックつけてるのにカスタム投稿画面にアイキャッチ画像が表示されない場合の対処

Custom Post Type UI というカスタム投稿を簡単に作れる非常に便利なプラグインがあるのですが、Featured Image にチェックをつけても投稿画面にアイキャッチ画像の挿入欄が表示されないので変だなーと思ってたのですが、以下のコードをテーマファイルの「functions.php」に追加すると表示されるようになりました。

add_theme_support('post-thumbnails');

※WordPress3.0から標準のテーマとなった TwentyTen にはあらかじめ組み込まれているようです。

【参考】

Post Thumbnail problem

WordPress 日本語 Codex

【宣伝】WordPress サイトコンテストに応募(会社で)

業務兼、半分趣味みたいな感じでFeedBoardというサイトを作りました。テスト中みたいな表示が出ますが、一応登録できます。で、このサイトをWordPressのコンテストに応募しておいたので、良いかもと思った人は「No.131」のやつに投票していただけるとありがたいです。

ちなみに私は「スリング専門店 pu-pi」さんのサイトに投票しておきました。このサイトは以前から知ってましたが、デザインが良くて印象がとても良いし、ECサイトとして機能してる点もポイント高いです。こういうのがパッと作れるようになると相当気持ちいいだろうな。

【DMSGuestbookカスタマイズメモ】URLをハイパーリンクに変換

DMSGuestbookというWordPressの掲示板プラグインを使用していますが、

標準ではコメント投稿時にURLがハイパーリンクに変換されないようなので以下の方法で対処しました。

 

1.ハイパーリンクの識別

まず、ハイパーリンクを識別する方法ですが、これは以下のサイトにそのものずばりなコードが載っているのでそのまま流用します。

参考:URLを自動的にハイパーリンク設定 – 教えて!goo:

$proto = ereg_replace("(https?|ftp|news)(://[[:alnum:]\+\$\;\?\.%,!#~*/:@&=_-]+)","\\1\\2",$proto);

 

2.DMSGuestbookプラグインのテンプレートファイルを編集

次にDMSGuestbookプラグインのディレクトリ内の[dmsguestbook/template/post/deafault.tpl]ファイルをコピーして適当に[deafault2.tpl]とでもリネームします。

リネームした deafault2.tpl を開き、33行目あたりに以下のコードを記述します。

$message_text = ereg_replace("(https?|ftp|news)(://[[:alnum:]\+\$\;\?\.%,!#~*/:@&=_-]+)","\\1\\2",$message_text);

 

3.編集したファイルをサーバにアップロード後適用する

編集したテンプレートファイルは上書き保存後、サーバにアップロードします。アップロード後、WordPress管理画面からDMSGuestbookのオプション画面を開き、[Guestbook settings]-[Extended]の「Post template」項目にアップロードした deafault2.tpl を指定し、保存します。

 

上手く行けばDMSGuestbookに投稿したURL(原則http://から始まる)がハイパーリンクになります。

また、DMSGuestbookとは直接関係ないですが、以下のサイトも参考にしました。

 

参考:WordPressコメント欄URLを自動的にハイパーリンクにする。 | 煤式自動連結器:

 

最初はちょっと勘違いしていて、上記のサイトを参考にcomment_postをhookとするプラグインを作ってたのですが、よく考えたらDMSGuestbookはプラグインで、コメントを投稿してもcomment_postが働くわけないことに気付きました。

しょうがないので、テーマファイルをいじって掲示板を作り直そうかとも考えましたが、DMSGuestbookのファイルを除いてみたら簡単に修正できるようになってたので助かりました。

プラグインの作り方もなんとなくわかったので、近いうちに何か作ってみたいですね。

Pages: Prev 1 2 3 Next
IT起業アカデミア