*

WordPressのプラグインで独自のページを作る方法がわからない

公開日: : 最終更新日:2013/07/11 WordPress ,

WordPressのプラグインを開発していて疑問がでてきました。プラグイン独自のページはどうすればいいのか?開発している宿の予約プラグインで、一般の人が見るカレンダーや予約フォームなどを、どう実装すればいいのか?例えばショッピングカートのページなども同様です。

スクリーンショット 2013-07-06 0.10.48

ショートコードを使う方法

簡単に思いついたのは「ショートコード」。これを作って固定ページで予約フォームなどを用意しておきショートコードを貼り付ける方法です。

固定ページなので上下に好きな文章や画像をいれることが簡単です。多くのプラグインで使われているスタンダードな方法です。

専用のファイル(テンプレート)を用意する方法

次に考えたのは専用のテンプレートファイルを用意する方法。実際に実現できるのかどうかはわかりません(キリッ。これはショートコードよりもカスタマイズの自由度が増します。しかしショートコードよりもカスタマイズが難しいのではないかと思います。

ショートコードも同様ですがバージョナップなども面倒になりそうです。

実物を調べてみる

そこで、実際にどうやって実現されているのか?Welcart e-Commerceというショッピングカートプラグインを探って見ることにしました。

スクリーンショット 2013-07-06 0.01.30

最初に調べたのは「カートに入れる」ボタンの form action の値です。

<form action="http://********.jp/usces-cart" method="post">

コレを見るとドメイン直下の「usces-cart」へ飛びます。サーバーのフォルダを確認してみても、当然ですがこのような名前のフォルダやファイルは存在していません。意味がよく分からないので、プラグインフォルダの中身を覗いてみます。そういえば前にカートのデザイン調整したことあったのに忘れてました。

ここで使われているHTMLはプラグインフォルダ内のtempletes/cart/cart.php というファイルのようです。ソースを見て検索して確認しました。このファイルは変数の設定が並べてあるファイルで、これらの変数を別の場所から読み込んでいるようです。詳しく見ると templates フォルダ内のファイルはほとんどこんな感じで変数への代入がファイルになっています。

そこで「cart/cart.php」を読み込んでいるファイルを検索して探しだしてみます。するとたったひとつのファイルで読み込まれていることを発見しました。

/classes/usceshop.class.php

function filter_cartContent($content) {
	global $post;
	$html = '';
		
	switch($this->page){
		case 'cart':
			$temp_path = apply_filters('usces_template_path_cart', USCES_PLUGIN_DIR . '/templates/cart/cart.php');
			include( $temp_path );
			break;

8000行近くある大きなファイルです。後半部分に以上のような読み込み部分があります。

ここから関数「filter_cartContent」を追いかけたり「$this->page」を追いかけたり…挫折しました(涙)。$pageへの読み込みが私には理解出来ませんでした。

というわけで、スタンダードな固定ページへのショートコードが一番いいですね!というヘタレ記事になりました〜。

リベンジで違うプラグインを探検してみます。今度は理解できたら記事にします。すいません。


Sponsored Link


 
 

関連記事

ペンション・民宿・プチホテル用 宿泊予約 WordPress プラグインを作る(10)空室管理画面 A

さっそく空室管理画面を作っていきます。今回は画面設計中心です。部屋タイプの選択と、空き情報を更新する

記事を読む

ペンション・民宿・プチホテル用 宿泊予約 WordPress プラグインを作る(4)データベース基礎

今回はWordPressのプラグイン開発で必要になるデータベースに関する知識ついて調べました。この辺

記事を読む

ペンション・民宿・プチホテル用 宿泊予約 WordPress プラグインを作る(11)空室管理画面 B

空室管理画面の2回目。今回は空室状況の入力欄と月が変わった時の処理を加えてみます。今回は一覧表示なの

記事を読む

ワードプレス用宿泊予約プラグイン開発「空室情報読み込み」

前回までに作ったカレンダーに空室状況を表示させます。最初に表示欄を作って確認してからデータベースの読

記事を読む

ワードプレス用宿泊予約プラグイン開発「空室カレンダー表示」

前回ネットで検索して見つけた calendar($year = "", $month = "") 関

記事を読む

ご質問は掲示板へお願いいたします。

Message

メールアドレスが公開されることはありません。

CAPTCHA


Optionally add an image (JPEG only)

Sponsored Link

激安UTEBIT Godox ソフトボックス ストロボ 60 x 60 cmを買ってみた

そんなわけで? 写真撮影用はトレーシングペーパーにするか、アンブレラか

herbstick ecoでシャグを試す&カメラ機材雑談

前にコメントで教えていただいたシャグなる物体を購入後数日放置。やっと時

小さめな激安楕円レフ板を買ってみた

最近小物の撮影を頼まれることが多くて困ります。写真はほぼ素人なのに。

【Blender】MakeHumanとManuelBastioniLAB

先日書いた 【18禁】Blenderと MakeHumanで美女を3D

DaVinci Resolve 14 のフェイス修正を少し試してみた

Davinci Resolve がベータを外したバージョン14を公開し

→もっと見る




  •  

PAGE TOP ↑