wordpressでCGI

cgiをWordpressで動かす方法・・投稿ページなら以下の手順通りにテンプレートファイルを作成する方法。また投稿の記事ならiframeで埋め込みが簡単。

手順1) テンプレートの作成。※テーマのpage.phpを開き、最初の行に以下のように”テンプレート名”を記述。

1
2
3
4
5
<?php
/*
Template Name: テンプレート名
*/
?>

手順2)
次にpage.php内に以下のようにiframeで動作させたいcgiのパスを記述して、名前を付けて保存。
※例えば、投票用であればテンプレート名を”votec.php”など。

1
2
3
<?php
<iframe src="http://****.com/votec.cgi" width="550" height="400" frameborder="0" scrolling="no"></iframe>
?>

手順3)
作成したテンプレートファイル(votec.php)をFTPでアップ。 手順4)
そしてページ投稿からカスタムテンプレートを選択して投稿すればOK。

http://39kn.com/2009/05/06/2107/

——————————————————————————————

なんとなく掲示板を設置してみました。
WordPressのプラグインをみたのですが、あまり好みのがなかったのでCGIの掲示板を設置してみました。

ページ内で表示したかったので少しがんばってみました。

導入方法:

【事前情報】
WordPressの設置フォルダは/wordpress
CGI掲示板の設置フォルダは/cgibbs
CGI掲示板のアクセス先はbbs.cgi
WordPressのページスラッグはbbs
WordPressテンプレートはニコニコプレス v1.2(春)
とします。
細かいところは補足入れますがファイル名などは好きにしてください。

【準備】
なんでもいいのでCGI掲示板を用意します。
掲示板の設置手順に沿って設置し、正常にアクセスが可能なことを確認します。

【導入】
まず使用しているテーマのpage.phpをコピーしてbbs.phpに名前変更します。
bbs.phpの一番上に下記を追加します。

1
2
3
4
5
<?php
/*
Template Name: bbs
*/
?>

あとはBBSを表示させたいところに下記を追加。

1
<iframe src="http://ドメイン/wordpress/cgibbs/bbs.cgi" width="表示させたい幅" onload="this.height=1;this.height=this.contentWindow.document.body.scrollHeight"></iframe>

ちなみにうちはこんな感じです。

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
/*
Template Name: bbs
*/
?>
<?php get_header() ?>
<!-- コンテナー始まり -->
<div id="container">
<!-- コンテント始まり -->
<div id="content">
<?php the_post() ?>
<!-- 記事始まり -->
<div id="post-<?php the_ID() ?>" class="<?php sandbox_post_class() ?>">
<h2 class="entry-title"><?php the_title() ?></h2>
<iframe src="http://www.redistribution.cc/blog/blogbbs/bbs.cgi" width="662" onload="this.height=1;this.height=this.contentWindow.document.body.scrollHeight"></iframe></div>
<!-- 記事終わり -->
<?php if ( get_post_custom_values('comments') ) comments_template() // Add a key+value of "comments" to enable comments on this page ?></div>
<!-- コンテント終わり --></div>
<!-- コンテナー終わり -->
<?php get_sidebar() ?>
<?php get_footer() ?>

まぁこれでうちの掲示板表示になりました。
—2009/04/05追記—
修正したbbs.phpをテーマフォルダにFTP等でアップロードして新しいページを作成。
このときに属性>テンプレートでbbsを指定してタイトルとページスラッグだけ記載して保存。
これで掲示板が表示されるページが完成です。
—2009/04/05追記—

【ハマった事】
PHPでのCGIの呼び出し方法にはまりました・・・。
PHPからPHPの呼び出しはincludeすればいいとわかってましたが・・・CGI呼び出す場合ってのが不明でした^^;
ふと頭に浮かんだのがfile_get_contentsでしたが、表示はされますが掲示板の新規スレッドなどをクリックすると
ページ内での表示ではなく掲示板だけの表示なってしまいました。
ちとカンニングでテンプレ作者のヒロカワズさんのHPをみてみると・・・iframe使ってることが判明!
そのほかカンニングしまくって同じように設置しようとしましたが、IEでの表示が崩れてたので断念(笑)
で、今のようなテンプレにしました。

インラインフレームの縦サイズの大きさを自動変更したかったので、こだわってみました。

1
onload="this.height=1;this.height=this.contentWindow.document.body.scrollHeight"

これ入れると縦サイズの大きさを自動変更してくれて便利です。
狐とIE6/7で動作確認済み。

http://www.redistribution.cc/blog/20090330_14.html

Posted in windows | Tagged , | Leave a comment

SlidingDoor

7つの画像にそれぞれパーマリンクを付けるにはヘッダー.php(header.php)を編集します。

http://mac-host.com/slidingdoor/

47行目

<div id=”imageMenu”>
<ul>
<!– THESE AR ETHE LINKS YOU GO TO WHEN YOU CLICK ON A SLIDING DOOR IMAGE–>
<!– change the href to look like this: <a href=”yourlink.com”> –>
<li><a href=”<?php bloginfo(‘url’); ?>/?cat=1“>Category 1</a></li>
<li><a href=”<?php bloginfo(‘url’); ?>/?cat=2“>Category 2</a></li>
<li><a href=”<?php bloginfo(‘url’); ?>/?cat=3“>Category 3</a></li>
……

もちろんページを指定することも可能です。

.

画像は wp-content/themes/sliding-door/imagemenu/images に 1.jpg~7.jpg まであります。

サイズは 320px×200px 。

差し替えは用意した画像をここにFTPアップロード(上書き)で完了!

http://jerama.wordpress.com/

Posted in windows | Tagged , | Leave a comment