日々 活動の覚書きのようなものです

WordPress2

2011年5月21日

 wordpress_title2 前回のWordPress(以下 WPと略します)の続編です。記事のひとつである「ページ(Page)」はその名のごとく1ページで構成されます。記述は”専用のエディタ”を使って制作します。下図はWordPressの管理画面です。

wpadmin1

  左サイドに管理メニューが並んでおります。中ほどに見える「固定ページ」が「ページ」を管理するところです。右側に「エディタ」があります。但しこの部分は選ぶメニューによって変わります。今、弊社の”システム > ビジネスブログ”のページを編集しています。エディタは実際に見たままの「ビジュアルモード」と直接HTMLを記入する「HTMLモード」のふたつの画面モードがあります。記事には、テキストとHTMLが記述できます。Javascriptのようなスクリプト言語を書き入れても正しく動作しません。それでもWordPress 2.5 からは「ショートコード」という”マクロコード”を作成する機能が追加されました。ここで記述された記事(コンテンツ)は、データベースのMySQLに格納されます。そして、ブラウザには”テンプレート”といわれるページの中で表示されます。”テンプレート”は拡張子が”php”のファイルでテキスト、HTML、Javascript、PHP言語で記述されています。コンテンツはこの中でWPの”テンプレートタグ”というPHP関数の値として表示されます。”テンプレート”はWPが用意したデフォルトの”index.php”,”page.php”などの他、利用者が作成して使用することができます。そして、「ページ」は表示する”テンプレート”を指定できます。下記はテンプレート「ビジネスブログ(businessblog.php)」のソース(原文)の抜粋です。

 

<?php /* Template Name: ビジネスブログ */ get_header(); ?>  

<div id=”content”>  

<img src=”<?php bloginfo(‘template_url’); ?>/images/bussinessblog2.jpg” width=”700″ height=”123″>

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>   

<div <?php post_class() ?> id=”post-<?php the_ID(); ?>”>   

<?php the_content(‘<p>’ . __(‘Read the rest of this page &raquo;’, ‘kubrick’) . ‘</p>’); ?>   

<?php wp_link_pages(array(‘before’ => ‘<p><strong>’ . __(‘Pages:’, ‘kubrick’) . ‘</strong> ‘, ‘after’ => ‘</p>’, ‘next_or_number’ => ‘number’)); ?>   

</div>

<?php endwhile; endif;  ?>

<!– ビジネスブログの開設 //–>  

<table border=”0″ cellspacing=”0″><tr>  

<td  width=”514″ height=”22″ background=”<?php bloginfo(‘wpurl’); ?>/wp-content/themes/kennet/images/bannerBGreen500.gif”>  

<font color=”#666666″><b>ビジネスブログを開設するのに必要なものと費用</b></font> </td></tr>

</table><br>  

<table border=”0″ width=”700″ ><tr><td>

    それでは、ビジネスブログ(ホームページ)を開設するのには何が必要になるのでしょうか、物品販売を業種とする企業を例として挙げてみました。<br><br>

   ※下記事項には、 インターネット接続のための通信費用及びプロバイダ利用費用は含まれておりません。<br><br>                                                           ——< 略 >——-    

CMS(Contents Management System)の手法をとりいれ、商品情報をデータベースに保管して様々な条件にて抽出し商品ページを自動的に作成します。商品ページを編集しなくても商品データが容易に変更できます。

     その他、顧客データの管理、ポイント管理、商品データの検索など高い機能を有します。プログラミングはショッピングカートに比べて技術的に高度なものになります。<br></li>    

 <br>※ 弊社では、貴社のホームページに用途にあったWebアプリケーションを付加するサービスを行っています。動作環境は PHP 5.0, MySQL 4.1 が使用できる。    

 </ul></td></tr>

 </table><br>

<div style=”float: right;”>  

 <nobr><a target=”_top” href=”<?php bloginfo(‘wpurl’); ?>/?page_id=114″>▲Top</a></nobr> </div>

<?php edit_post_link(__(‘Edit this entry.’, ‘kubrick’), ‘<p>’, ‘</p>’); ?> </div>

<?php get_sidebar(); ?>

<?php get_footer(); ?>

 

 少し解説しますと、まず”<?php”と”?>”で挟まれた部分がPHP言語の記述です。最初の<?php /* Template Name: ビジネスブログ */ get_header(); ?> の 「/* Template Name: ビジネスブログ */」はWPのお約束でこのファイルがWPの”テンプレート”であり、名前が”ビジネスブログ”であることを示しています。その後に続く「get_header();」はWPのテンプレートタグで”別のテンプレート’header.php’を読込む”ことを実行します。そのあとこのテンプレートの記述が続きます。そして、最後の手前の「get_sidebar();」と最後の「get_footer();」はそれぞれ”sidebar.php”,”footer.php”のテンプレートを読込みます。”header.php”,”sidebar.php”,”footer.php”は次回解説します。

  それではコンテンツはどこに表示されるかといえば、7行目の「<?php the_content(‘<p class=”serif”>’ . __(‘Read the rest of this page &raquo;’, ‘kubrick’) . ‘</p>’); ?>」のテンプレートタグ”the_content();”で出力されます。

 

   つぎに「投稿(Post)」ですが、管理画面メニューの上から2番目にあります。これも記事は「エディタ」を使って作成されます。そして、「ページ」と同じくデータベースのMySQLに登録されます。ただし「ページ」と違って、このとき”カテゴリ”と”投稿タグ”というキーワードも一緒に記入されます。  表示はどうするかといえば、「ページ」同様 ”テンプレート”を使用しますがWPのデフォルトのテンプレートのみ使用できます。それでもプログラミングで使用テンプレートを替えることは可能です。また、デフォルトのテンプレートもカスタマイズできます。下記にまたテンプレート”index_note.php”のソースを載せます。

 

<?php /* * @package Index_Note * @subpackage Kennet_Theme */ get_header();  ?>

<div id=”content”>

<p style=”margin-left: 20px;”><img src=”<?php bloginfo(‘template_url’); ?>/images/PC_Note_Logo2.gif” width=”599″ height=”51″ border=”0″></p>

<div style=”background-color:white; text-indent:1em; padding: 5px; width: 660px; margin-left: 20px;”>

 日常の業務の中で調べたり、自分自身で確認したことで皆様の参考になりそうなことを思うがままに書いてみました。時として私の浅学が故に間違ったり不審な記載があったりするかもしれませんが、その時にはご指摘なりご意見などを頂戴いたしますと内容がより確かなものとなりますので、是非ともお問合せフォームにてご連絡いただきますと幸甚に存じます。</div><br>

<?php query_posts($query_string .’&posts_per_page=5′); ?>

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

<div <?php post_class() ?> id=”post-<?php the_ID(); ?>”>

<div class=”storycontent cornerborder10px3″ style=”padding: 10px; width: 680px; background: white;” >

<?php the_content(__(‘(more…)’)); ?>

<h3 class=”storytitle”><a href=”<?php the_permalink() ?>” rel=”bookmark”><?php the_title(); ?></a></h3>

 <div class=”meta”><?php _e(“Filed under:”); ?>

<?php the_category(‘,’) ?> &#8212; <?php the_tags(__(‘Tags: ‘), ‘, ‘, ‘ &#8212; ‘); ?>

<?php the_author() ?> @ <?php the_time() ?>

<?php edit_post_link(__(‘Edit This’)); ?></div></div>

<div class=”feedback”> <?php wp_link_pages(); ?> <?php comments_popup_link(__(‘Comments (0)’), __(‘Comments (1)’), __(‘Comments (%)’)); ?> </div> </div>

<?php comments_template(); // Get wp-comments.php template ?>

<?php endwhile; else: ?> <p><?php _e(‘Sorry, no posts matched your criteria.’); ?></p>

<?php endif; ?> <?php posts_nav_link(‘ &#8212; ‘, __(‘&laquo; Newer Posts’), __(‘Older Posts &raquo;’)); ?> </div>

 <?php get_sidebar(); ?>

<?php get_footer(); ?>

 

   このテンプレートは、”index.php”の中でカテゴリ「PC雑記帳」で集められた記事を表示するときに使用するようプログラミングされています。いま皆様がお読みいただいている「PC雑記帳」のテンプレートがこれです。「投稿(Post)」は「ページ(Page)」とは異なり、複数の記事をカテゴリなどのキーワードで抽出して連続に表示することができます。wordpress4

  コンテンツはテンプレートのどこで表示されているでしょうか、おわかりですね、なかほど16行目の「<?php the_content(__(‘(more…)’)); ?>」の”the_content();”で出力されています。でも、コンテンツは複数あるわけですよね。繰り返し実行されることを「ループ」といいます。ループはどこで行われているのでしょうか。12行目の「<?php if (have_posts()) : while (have_posts()) : the_post(); ?>」の” while (have_posts()) :”と 26行目「 <?php endwhile; else: ?>」の”endwhile;”の間でループが行われています。並び替えも”登録日付順”や”タイトルの名前順”など指定できます。

  まとめです。WPは記事(コンテンツ)を”専用エディタ”で、「ページ(Page)」、「投稿(Post)」に分けて制作して、「ページ(Page)」は専用テンプレートで、「投稿(Post)」はキーワードで複数の記事を集めてデフォルトのテンプレートで表示します。投稿者はHTMLを知らなくてもワープロを使えるスキルがあれば”エディタ”を使ってテキスト(文字)”と”画像”の記事は書けます。また、HTMLを使えば表やリスト等の整形された表現もできます。たとえ記述に多少の誤りがあっても、テンプレートを使用することで表示が大きく崩れることを防ぐことができます。このことが”プログ”がHomepage作成の知識がなくても更新ができる理由です。今回は大変長くなりましたが、WordPress の表示方法について書いてみました。                          <2010/05/20>

Filed under: blog,WordPress — Taka @ 12:36 PM

Google マップ

2011年4月21日

 次のプラグインは「Google マップ」です。まだ前回の「Welcart」を書き終えていませんが、とりあえずつぎに行っちゃいます。後日、Welcartも最後まで書くつもりでおります。

 さて、会社或いはお店のホームページはふつうお客様に来訪してもらうために、会社(店舗)案内にアクセス方法と併せて地図を掲載します。以前はグラフィックツールを使って、鉄道線路とか道路を描き、えき、学校、神社・仏閣などのイラストのシンボルを配し文字案内を加えて地図を作成しておりました。かなり手間のかかる作業でした。そのかわりに「Google マップ」をホームページに表示させることが多くなってきています。今回は「Google マップ」をWordPressの「投稿」や「ページ」に表示させるお話です。

 「Google マップ」をWordPressで表示するプラグインは以前からいくつかありまして、”Google Maps Anywhere”や”Google Maps for WordPress日本語版”に人気があったようです。これらのプラグインはGoogleが提供する Google Maps API を使っており、そのためにGoogleに登録をして Google Maps API Key を取得しなければなりません。

 これからご紹介をする”Google Maps v3 Shortcode”はGoogle Maps API v3  を使っていますが、v3から Google Maps API Key が必要なくなりました。 また “Google Maps v3 Shortcode” は”ショートコード”を使ったプラグインです。”ショートコード”とはWordPress2.5から追加されたショートコードAPI機能のことで、説明によるとマクロ機能のようなもので、各テーマのfunctions.phpファイルに関数を定義し、その返り値を関数名とは別の”ショートコード名”が書かれた「投稿」や「ページ」のところに出力することができます。同じ記述を繰返し使うときに便利ですし、原稿が見やすくなります。詳しくはこちら 矢印 ショートコード API

 Google Maps v3 Shortcode の使用方法は、プラグイン一式をフォルダごとWordPress のpluginsフォルダにアップロードします。そして、管理画面で有効化します。インストールはこれで完了です。後は、表示したい箇所にショートコード名の”map”を記入します。書式は”[map]”  です。このとき、属性も一緒に記述します。

 ①サイズ(横x縦)  w=”500″ h=”300″  単位はピクセル,  ②ズーム(レベル)  z=”15″  数字が大きい方が倍率が高くなります,  ③マーカー(指定場所に表示される) marker=”yes” yesで表示,  ④アドレス(場所の指定)  address=”埼玉県さいたま市大宮区北袋町1丁目318,Japan”  弊社の住所です。

 最後、ショートコードは “[map w=”500″ h=”300″ z=”15″ marker=”yes” address=”埼玉県さいたま市大宮区北袋町1丁目318,Japan”]” となります。これを[会社案内]のページ末尾に追加しました。さて結果表示はどうなりましたでしょうか 矢印 [会社案内]

Filed under: blog,WordPress — Taka @ 2:40 AM

WordPress

2011年4月14日

 ブログツールの”WordPress”についての解説は、インターネット上に数多あり私が書くことも無いと思いますが、私が理解したことの整理のつもりで書いてみますのでおつき合いください。 WordPress の実体はWebサーバーで動作するプログラムを記述するスクリプト言語のPHPで作成されたプログラムの集り(関数群)です。  左の図は、弊社テストサーバーにインストールされたWordPressのフォルダ構成です。WordPressはインストールされるとWebサイトにwordpressのフォルダを作りその中にwp-admin, wp-content, wp-includes の三つのフォルダを作りその他プログラムファイルなど必要なファイルを書込みます。 Wp-admin : 管理画面のプログラムが入っています。 Wp-content : ユーザーが作成したり、後でインポートしたファイルが入っています。 Wp-includes : WordPressのコアディレクトリと説明されていますが詳しくは解りません。  私たちユーザーが関係するのは wp-content で、さらにその中に languages, plugins, themes のフォルダが作られます。また、WordPress をアップグレードしたり、画像などを転送すると upgrade, uploads のフォルダが自動的に追加されます。 Languages : 英語の項目名や用語を日本語に変換するための言語翻訳ファイル(.mo)が入っています。 Plugins : 機能拡張のプラグインはここに格納されます。今回追加した”ショッピングページ(ネットショップ)”の”Welcart”は”usc-e-shop “のフォルダ名でプラグインされています。 Themes : デザイン(外観)を決める”テンプレート”は、ここに “ テーマ名“のフォルダごとにまとめて収納されています。弊社のデザインは”kennet”のフォルダに、Welcartのデモ用サンプルのデザインは”welcart_default“ に入っています。 それでは、ブログの記事(コンテンツ)はどこにあるかといえばwordpressフォルダ内にはなくて、外部のデータベースに保管されています。WprdPrssが使用するデータベースはWebサーバー用のデータベースMySQLです。ここに、作成日、タイトル、カテゴリー、検索に使用するタグ情報とともに登録します。 WordPressのコンテンツは2種類あります。ひとつは日々追加するようなタイプで「投稿(Post)」といいます。もう一つは、余り内容が変わらず常時表示するタイプの「ページ(Page)」です。  ともに管理画面の専用エディタで入力します。その他、テンプレートファイルに従来通りHTMLで直接記入することもできます。但し、この場合はWordPressの検索機能を使って検索することはできなくなります。 次に、WordPressはどうやってコンテンツを表示しているかを説明しますが、少し長くなってきましたので、このあたりでINTERMISSION にします。 <11/04/14>

Filed under: blog,WordPress — Taka @ 10:17 AM