WordPressの最近のブログ記事
<?php
//for use in the loop, list 5 post titles related to first tag on current post
$backup = $post; // backup the current object
$tags = wp_get_post_tags($post->ID);
echo "<div>";
$tagIDs = array();
if ($tags)
{
$tagcount = count($tags);
for ($i = 0; $i < $tagcount; $i++) {
$tagIDs[$i] = $tags[$i]->term_id;
}
$args=array(
'tag__in' => $tagIDs,
'post__not_in' => array($post->ID),
'showposts'=>5,
'caller_get_posts'=>1
);
$my_query = new WP_Query($args);
if( $my_query->have_posts() )
{
echo "<ul>";
while ($my_query->have_posts()) : $my_query->the_post(); ?>
<li><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></li>
<?php endwhile;
echo "</ul>";
}
} else echo "<span>No related posts were found!</span>";
$post = $backup; // copy it back
wp_reset_query(); // to use the original query again
echo "</div>";
?>
これを適当に好きなようにカスタマイズ。
via http://www.blogohblog.com/10-more-wordpress-hacks-for-easy-life/
<a href="<?php echo get_settings('home'); ?>/">Home >
<?php $cat = $wp_query->get_queried_object();
if($cat->category_parent) { echo (get_category_parents($cat->category_parent, true, ' > ', false)); }
echo $cat->cat_name; ?>
http://www.koikikukan.com/archives/2007/04/20-023531.php
さすがという感じです。
詳細は上記リンクにて、目を通す。
色々ググって出てくるけど、これが一番問題なし。
ということを現時点で少し考えてみる。
自分は過去の経験を割合で示すとMT 95%のWP 5%というところで、ほとんどMTに漬かってきたわけだけれども、ここにきてWordPressの良さを感じている今日この頃。
で、Movable TypeかWordPressか どちらを選ぶべきかということは前々から大分色々議論になって、個人的な結論としてはまあ、ケースバイケースということかと。
すいません、しょうもない結論で。
というかこの議論古いか?...
結論はアレですが、その結論に至る過程は参考になるかと思いますので、以下に書きます。
Movable Typeは有償版があるため、クライアント案件の時にいいと思う。購入の際に支払うのは保険金みたいなもの。
あ、完璧にできるPGとかいるなら別にWordPressでもいいと思いますよ、でも自分はそっち側のヒトではないのでクライアントにオススメしやすいのはMT。
有償版といったって一番安いのが63,000円なんだからたいしたことないし。(...とんでもなく予算ギリギリ案件は別)
現行バージョンだとMTの方が動作が重い気がする。
プラグインの導入やらアップデートなど諸々使い勝手もMTの方が悪い。
WordPressはグローバルなCMSだけあって、楽しいプラグインが多く、MTは少ないと思う。
でも、テンプレの管理はMTの方が使いやすい。
カテゴリの管理も、親子関係以外で主副の設定ができるMTの方が賢い。
タグ機能もMTは日本語のタグでもバグはなくて、使いやすい。WordPressはスラッグで判断するので、日本語タグはもう壊滅的。これを解決するプラグインとか探したけど見当たらず...これは真剣に悩んでいます(知っている方、是非教えてください...)
とまあ、どちらもメリットデメリットはあるので...でもなんだろな、WordPressのほうがワクワク感がある気がします。
MTは知ってのとおり、個人ブログ管理システムではなく企業CMSとしてどんどん発展していく流れ。
一方WordPressは個人ブログ含めてもっと横断的な感じ。そういう意味ではもう、戦っている土俵がちがうわけで。
ということでシーンにあわせて「ケースバイケース」という結論になりました。
タグ・カテゴリ管理周りが改善したWordPressができたら、そのときはもうWordPressに軍配があがるかな、うん。
ちなみにGoogle Trendでみると、全地域ではもちろんのこと日本でもMTはずっと下り坂です。
Google Trend:Movable type WordPress比較
みなさんはどうでしょう?
普通にカテゴリーで条件分岐するのは、
in_category()
でいいんだけど、親カテゴリー毎に条件分岐したい。
かつ親カテゴリーはチェックがはいっていない場合の条件分岐。
指定親カテゴリーIDが「1」「5」と仮定して。
http://ja.forums.wordpress.org/topic/1290
<?php
$post_cats = get_the_category();
if ( $post_cats[0]->cat_ID == 1 || $post_cats[0]->category_parent == 1 || cat_is_ancestor_of( 1, (int)$post_cats[0]->category_parent ) ) { ?>
親カテゴリーAの記事の表示内容
<?php } elseif ( $post_cats[0]->cat_ID == 5 || $post_cats[0]->category_parent == 5 || cat_is_ancestor_of( 5, (int)$post_cats[0]->category_parent ) ) { ?>
親カテゴリーBの記事の表示内容
<?php } else { ?>
その他の記事の表示内容
<?php } ?>
感動的。
WordPress リンクなしのカテゴリ名表示方法。
<?php $cat = get_the_category(); $cat = $cat[0]; { echo $cat->cat_name; } ?>
リンクありは<?php the_category(); ?>
Wordpress %postname%の日本語が気に入らないときの対処。
以下のアドレスでソースを取得し、プラグインファイル.phpをつくって有効化する。
http://d.hatena.ne.jp/sugarbabe335/20081218/1229609082
<?php
/*
* Plugin Name: MT Style Post Name
* Description: タイトルから英数字、ダッシュ、アンダーバーのみ抜き取ってスラッグに。日本語しか使われてないエントリはPost_IDを使う。
* Author: 449
* Plugin URI: http://pc10.2ch.net/test/read.cgi/blog/1163599919
* Version: 0.1
* */add_filter('sanitize_title','sanitize_title_numalpha_only',9);
function sanitize_title_numalpha_only($title) {
return preg_replace('/[^%a-zA-Z0-9 \(\)_-]/', '-', $title);
}
?>
http://apfel.jp/upupblog/wordpress-mt-style-post-name.html
感謝感謝。
管理->カテゴリーで ID を知りたいカテゴリー名にマウスオーバーすると、ブラウザーのステータスバーに URL の一部としてその 'cat_ID' が表示されます。
Firefox なら、「表示」メニューの「ステータスバー」にチェックを入れることでステータスバーを表示できます。ID を調べる、より込み入った方法としては、phpMyAdmin のようなアプリケーションを使用して、データベーステーブル wp_terms の name コラムでお目当てのカテゴリー名を探します。この行の term_id がそのカテゴリー ID です。
WordPress3.0 マルチサイト機能で複数ブログを管理する方法。
1 wp-config.phpに以下の一文を追記
define ('WP_ALLOW_MULTISITE', true);
2 管理画面のメニューから ツール → ネットワーク を選択して、指示に従う
サブドメインで管理か、サブディレクトリで管理かは注意して。
以上
