Wordpressでの記事の書き方のメモです。
「WordPressの投稿(記事)の書き方」の続きを読む…
「現在メンテナンス中のため、しばらくの間ご利用いただけません。」っと表示される場合の対処法
皆様もご経験ありませんか?
検索してこのページにたどり着いたのであれば、おそらくいま焦っているのではないでしょうか?
そうです。。。Wordpressのアップデートに失敗してしまったのです。
新規投稿してから一定期間だけ新着アイコンを表示する方法
functions.phpに下記を追記します!
//新着アイコン表示 function new_icon_add($entry){ $days = 14; //アイコンを表示させる $today = date_i18n('U'); $entry_date = strtotime($entry->post_modified); $elapsed = ($today - $entry_date)/(24 * 60 * 60); if($days > $elapsed){ echo '<img src="' .get_bloginfo('template_url'). '/img/icon_new.gif" alt="new" style="" />'; } }
そして、
あとは新着アイコンを表示したい場所に<?php new_icon_add($post); ?>と設置するだけ!!!
お試しを!
WordPressカテゴリー一覧を表示するタグ
どうも忘れてしまうのでメモ
<?php wp_list_categories(); ?>
で表示されます。
これだけですとデザイン的にイケてない感じになってしまうので、下記のパラメーターが利用可能です!
<?php wp_list_categories(‘(1)&(2)&(3)&~(18)’); ?>
(1)show_option_all
投稿記事がある全カテゴリーのリンク表示を指定
TRUE ・・・ 表示(デフォルト)
FALSE ・・・ 非表示
(2)orderby
表示順序を指定
ID ・・・ カテゴリーid順
name ・・・ カテゴリー名順(デフォルト)
count ・・・ 投稿記事数順
(3)order
表示順序の昇順、降順を指定
asc ・・・ 昇順(デフォルト)
desc ・・・ 降順
(4)show_last_updated
最新の投稿日時の表示を指定
1(TRUE) ・・・ 表示
0(FALSE) ・・・ 非表示(デフォルト)
(5)style
リスト形式<li>での出力可否設定
list ・・・ リスト形式(デフォルト)
none ・・・ 改行タグで仕切り
(6)show_count
投稿記事数の表示を指定
1(TRUE) ・・・ 表示
0(FALSE) ・・・ 非表示(デフォルト)
(7)hide_empty
投稿記事の無いカテゴリーの表示を指定
1(TRUE) ・・・ 非表示(デフォルト)
0(FALSE) ・・・ 表示
(8)use_desc_for_title
aタグのtitle要素に、カテゴリー概要の挿入を設定
1(TRUE) ・・・ 表示
0(FALSE) ・・・ 非表示(デフォルト)
(9)child_of
指定した親カテゴリー配下の子カテゴリーの表示を指定
カテゴリーid
(10)feed
カテゴリーフィードへのリンク文字列を指定
(11)feed_image
カテゴリーフィードへのリンク画像を指定
ex)feed_image=/images/rss.gif
デフォルトは空
(12)exclude
非表示の投稿ページidを指定
カテゴリーid
(13)include
表示する投稿ページidを指定
カテゴリーid
(14)hierarchical
階層構造での表示を指定
1(TRUE) ・・・ 表示(デフォルト)
2(FALSE) ・・・ 非表示
(15)title_li
カテゴリーリストのタイトル名の文字列を指定
デフォルトは、「カテゴリー」
(16)number
表示するカテゴリーの数を指定
デフォルトは無制限
(17)echo
出力形式を指定
1(TRUE) ・・・ 標準(デフォルト)
0(FALSE) ・・・ PHP形式
(18)depth
階層の深さ(数値)を指定
※WordPress2.5から
0 ・・・ 全て表示 (デフォルト).
-1 ・・・ 全てを並列に表示
1 ・・・ 階層で1番上のカテゴリーのみ表示
n ・・・ n(整数)番目までのカテゴリーを表示
WordPressのページに最新記事一覧を挿入するタグ
どうも忘れてしまうのでメモ
WordPressの「一般設定」に項目を追加
いろいろWordpressをいじっていると、たくさんカスタマイズしたくなってきますね。
いまWordpressのテンプレートにおいて、あるプロジェクトの準備中で、どうしてもカスタムフィールド以外で、テーマに「項目」を追加したくなりました。
というか追加する必要が出てきました。
そこでいろいろ調べていると、結構簡単に追加できる方法を見つけたので、自分のメモとしても記録しておきたいと思います。
結構簡単です。
テーマファイルの中にある、fanction.phpに下記のコードを追加するだけ!!
(下記は例として「電話番号」の項目を追加したものです。)
//////////////////////////////////// // 一般設定に【電話番号】項目追加の例 <?php class wbConfig { public function __construct() { add_action('admin_init', Array(&$this, 'admin_init')); } public function admin_init() { add_filter('whitelist_options', Array(&$this, 'add_setting_field')); add_settings_field('tel', '電話番号', Array(&$this, 'general_setting_field'), 'general'); } public function add_setting_field( $whitelist_options ) { $whitelist_options['general'][] = 'tel'; return $whitelist_options; } public function general_setting_field() { $tel = get_option('tel'); ?> <input type="text" name="tel" size="50" value="<?php echo esc_html($tel); ?>"> <?php } } new wbConfig(); ?>
上記の「tel」となっている部分を適宜変更してもらえれば、いろいろな項目が追加できますよ^^
管理画面の一般設定に追加できたら、今度はテーマファイルの挿入したい部分に下記を追加するだけ!
<?php echo get_option( 'tel' ); ?>
簡単ですね ^^ ~
WordPressでDOCTYPE宣言とXML宣言を記述する方法
Web制作のコーディング作業においてキレイなソースを書くためには、まず「DOCTYPE宣言」と「XML宣言」をする必要があります。
デフォルトのWordperssでは、「XML宣言」などは含まれておらず、W3Cの基準を基にチェックすると大きく減点されてしまうので、そのままでは問題だ!という方は、テンプレートファイル「index.php」(もしくは「header.php」)に、下記のようにまずDOCTYPE宣言とXML宣言を記述します。
<?php $ua = $_SERVER['HTTP_USER_AGENT'];if (!(ereg("Windows",$ua) && ereg("MSIE",$ua)) || ereg("MSIE 7",$ua)) {echo '<?xml version="1.0" encoding="' . get_settings('blog_charset') .'"?>' . "\n";} ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
私はあまり深く考えずに、上記をそのままページの1行目になるように貼り付けてます。
DOCTYPE宣言
HTMLで文書タイプを宣言するための記述
XML宣言
XHTMLの名前空間を記述。
「名前空間」とはNamespaceの訳語で、名前の集合を分割することで衝突の可能性を低減しつつ参照を容易にする概念。
勝手な名前を使うとプログラムが動作しないので、それを避けるために作られてます。
さくらインターネットへのWordPressインストールマニュアル
これまで、少しずつWordpressの便利なプラグイン等の情報を書いてきましたが、そもそも「Wordpressを使えていない。」、「使いたいがどのようにしたらよいかわからない」という人が結構いるようなので、インストール方法を整理していました。
私はいつも「さくらインターネット」を使っているので、その方法を簡単に。
1.インストール設定例
・ユーザ名: example ・デフォルトドメイン名: example.sakura.ne.jp ・インストールディレクトリ: /home/example/www/wp ・インストールURL: http://example.sakura.ne.jp/wp ・利用データベース種別: MySQL
2.データベース(MySQL)の初期設定
1.「サーバコントロールパネル」へログインします。
2.「アプリケーションの設定」から『 データベースの設定 』をクリックし
3.ご希望の『 データベース 文字コード 』を選択します。
4.『 データベース 接続用パスワード 』を2ヶ所、同じものを入力します。
5.『 送信 』ボタンを押します。
6.データベース設定確認画面が表示されます。
当ページでは下記のようにデータベースを設定致しました。
○MySQL設定例
データベースサーバのホスト名: mysql207.db.sakura.ne.jp データベースユーザ名: example データベースパスワード: ************ データベース名(ユーザ名と同じ): example データベース 文字コード: UTF-8
3.WordPress のダウンロード
WordPress公式サイトのダウンロードページへアクセスし、右側にあるボタンから『WordPress』ファイルをダウンロードしてください。
4.ダウンロードしたパッケージを解凍する
ZIP ファイルを解凍してください。
ZIP ファイルを解凍するには、解凍用ソフトをご利用ください。「Lhaplus」などの無料ソフトが便利です。
パッケージを解凍すると、以下のようになります。
5.ファイルのアップロード
FTPソフト『FFFTP』などの無料ソフトをダウンロード、インストール、設定してサーバーにアップロードします。
(下記画像のようにローカルの左側から、サーバ上の右側へ移動)
6.セットアップ
1. Webブラウザを使用して http://example.sakura.ne.jp/wp/ ページを開いてください。
※ あなたのドメイン名で読み替えてください。
フォルダを変更した場合は、フォルダ名をあわせて指定してください。
2. 内容を確認し「wp-config.php ファイルを作成する」ボタンを押します。
3. 以下の画面が表示されます。
内容を確認し「次に進みましょう!」ボタンを押します。
4. 以下の画面が表示されます。
必要項目を入力し「作成する」ボタンを押します。
※ 「データベースのホスト名」については、localhost ではなく、データベースサーバの項目に変更してください。
同じデータベースに複数のWordpressをインストールする際には、管理しやすいように「テーブル接頭辞」を変更すると良いでしょう。
(「wp_」でなく、「wp_01_」「wp_blog_」など)
5.以下の画面が表示されます。
内容を確認し「インストールを実行しましょう!」ボタンを押します。
7.インストール
次のようなページが表示されます。
ブログタイトル、メールアドレスを入力し、[WordPressをインストール]ボタンをクリックします。
正常にインストールが完了していれば、WordPressの「ログイン」ボタンが表示されます。
「ログイン」ボタンをクリックします。
利用開始です。
先ほど設定したユーザ名とパスワードを入力ください。利用開始となります。
以上となります。
記事が古くなっていたり、さらに最新のインストール方法を確認したい場合は、下記をご参照ください。
http://support.sakura.ad.jp/support/manual/rs/wp_man.shtml
さくらインターネット以外のレンタルサーバーでのインストールマニュアルはこちらからご確認ください。
・ロリポップ : http://lolipop.jp/manual/blog/wp/
・Xサーバー : http://www.xserver.ne.jp/man_install_word.php
・アイル : http://home.isle.ne.jp/support/guide/infinito_plus/inp_app/word_press.html
・GMO(お名前.com) : http://guide.onamae-server.com/sd/3_9_12_14/
WordPressの条件分岐タグ
WordPressのテーマをカスタマイズする上で欠かせないテクニックに、条件分岐タグ(Conditional Tag)という便利なタグがあります。
普通のブログを作るくらいだとめちゃめちゃ使うという程でもないかもしれませんが、WordPressを使って一般的なWebサイトを構築しようとする場合かなり必要になるタグです。
今までこの条件分岐タグを使いたいと思った時には、Googleで検索してヒットする他のサイトを参考にさせて頂きましたが、自分の使い勝手が良いように整理したいと思います。
(1)メインページかどうかで条件分岐
is_home()
ブログのメインページが表示されているかどうかは is_home() を使います。
<?php if(is_home()): ?> この部分は、Wordpressサイトのメインページの場合表示されます。 <?php endif; ?>
TOPページにブログのように投稿記事を表示させ、例えば、「古い記事へ」「新しい記事へ」のようなページも is_home() では true が返ってきてしまい、上記が表示されてしまいます。「TOPページだけに表示させたい!」という場合には、下記のように!is_paged() を一緒に使います。
if(is_home() && !is_paged()):
<?php if(is_home() && !is_paged()): ?> この部分は、Wordpressサイトのメインページの場合表示されます。 メインページでも、2ページ目、3ページ目などの複数ページは含みません。 <?php endif; ?>
(2)個別投稿ページ(シングルページ)かどうかで条件分岐
is_single()
各記事の個別ページ(シングルページ)かどうかを判断します。パラメータを渡してもっと細かく条件を付ける事もできます。
<?php if(is_single('10')) :> 投稿IDが"10"の場合表示されます。 <?php elseif(is_single(array(2, 5, 11, 21))) :> 投稿IDが"2""5""11""21"のいずれかの場合表示されます。 <?php endif ?>
複数のページIDで指定する場合は、それらのページIDを「array()」で囲む必要があります。
パラメータはページIDの他にも記事タイトルや投稿スラッグを指定する事もできます。
投稿スラッグで指定する場合は下記のようになります。
<?php if(is_single('coffee_jiten')) :> "coffee_jiten" という投稿スラッグの記事の場合表示されます。 <?php elseif(is_single(array(17,'coffee_bean','CAFE LOG'))) :> 投稿IDが"17",スラッグが"coffee_bean"または、タイトルが"CAFE LOG"という投稿の場合表示されます。 <?php endif ?>
(3)個別ページかどうかで条件分岐
is_page()
ここでは、ブログ記事とは別に、個別に作れるページの条件分岐をせいりしています。
パラメータをわたして細かく条件分岐して使う事もできます。
<?php if(is_page('12')): ?> ページIDが"12"の場合表示されます <?php elseif(is_page('CAFE LOG')): ?> ページのタイトルが"CAFE LOG"の場合表示されます。 <?php elseif(is_page('coffee_jiten')): ?> ページのスラッグが"coffee_jiten"の場合表示されます。 <?php endif; ?>
(4)カテゴリーページかどうかで条件分岐
is_category()
あるカテゴリーのアーカイブページが表示されているかどうかを判断します。WordPress で一般的なWebサイトを作る時でも、コンテンツをカテゴリーを使って分けている手法をよく使います。
パラメータを指定する事で、細かく条件分岐できます。
<?php if(is_category('3')): ?> カテゴリーIDが"3"の記事の場合表示されます。 <?php elseif(is_category('COFFEE')): ?> カテゴリーの名前が"COFFEE"の記事の場合表示されます。 <?php elseif(is_category('cafe')): ?> カテゴリースラッグが"cafe"の記事を表示します。 <?php elseif(in_category( array( 1,2 ))): ?> カテゴリーIDが "1, 2 "に含まれる記事の場合表示されます <?php else: ?> 上記の条件以外の記事を表示します。 <?php endif; ?>
(5)タグで条件分岐
is_tag() / has_tag()
is_tag() はタグのアーカイブページが表示されているかどうかを判断します。
<?php if(is_tag('coffee')): ?> "coffee"タグのついた記事を表示します。 <?php elseif(is_tag(array('hogehoge','cafe'))): ?> "hogehoge", "cafe" タグのついた記事を表示しています。 <?php endif; ?>
have_tag() はその記事が指定したタグを使ってしるかどうかを判断できます。ループの中で使います。
<?php if(has_tag('cafe')): ?> この記事には "cafe" タグがついている場合表示されます。 <?php elseif(has_tag(array('coffee','hogehoge'))): この記事には "coffee, hogehoge"のいずれかのタグがついている場合表示されます。 <?php endif; ?>
(6)検索結果ページが表示されているかどうかで条件分岐
is_search()
検索結果ページであるかをを表示しているかどうかを判断します。下のコードでは検索クエリ(検索したキーワード)と検索結果数も表示しています。
<?php if (is_search()): ?> <?php global $query_string; query_posts($query_string . "&post_type=post"); global $wp_query; $total_results = $wp_query->found_posts; ?> <p>"<?php the_search_query(); ?>" で検索した結果:<?php echo $total_results; ?>件</p>
WordPressの検索エンジンへの公開設定
Wordpressをどのような用途で利用するかによって、Wordpressを検索エンジンにヒットさせたくない場合も、、、あるかもしれません。
または、サイトリニューアルのために一定期間検索にヒットさせたくないなど、そんな時は下記の方法で、簡単に検索エンジンをブロックする事が出来ます!
Wordpress管理画面の 「設定」>「プライバシー」を開きます。
その画面に出てくる「サイトの表示状態」で、『検索エンジンはブロックするが通常の訪問者の閲覧は許可する』で検索エンジンをブロックする事が可能
ここをチェックする事によって、Wordpressサイトの
タグ内に、下記のタグが挿入されることにより検索エンジンにヒットしないようにすることができます。