バージョン選択

フォーラム

メニュー

オンライン状況

45 人のユーザが現在オンラインです。 (37 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 45
もっと...

サイト内検索

質問 > フロント機能 > ページを同じディレクトリ内に量産したい

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
yuh
投稿日時: 2013/2/1 12:43
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1819
Re: ページを同じディレクトリ内に量産したい
name=abc[数字]で命名規則が決まっているのであれば

$layout = new SC_Helper_PageLayout_Ex();
 $path = $layout->getTemplatePath($this->objDisplay->detectDevice());
 if (isset($_GET['name']) AND preg_match('/^[a-zA-Z0-9]+$/',$_GET['name'])) {
   $name = $_GET['name'];
   $this->tpl_mainpage = $path.'hoge/'.$name.'.tpl';
 }

値のチェックは入れておいた方がいいと思います
kanaryo
投稿日時: 2013/2/4 11:19
対応状況: −−−
常連
登録日: 2011/10/18
居住地:
投稿: 66
Re: ページを同じディレクトリ内に量産したい
常連様

アドバイスありがとうございます!

前回教えて下さったコードでも今回のコードでも、
どちらのコードでも下記のようにtplを開くことができます。

例)
abc1.tpl、abc2.tpl、hoihoi.tpl・・・のファイルを用意し、
/data/Smarty/templates/default/hoge
へ全てのtplファイルをアップした後、

http://ドメイン/hoge/index.php?name=abc1
http://ドメイン/hoge/index.php?name=abc2
http://ドメイン/hoge/index.php?neme=hoihoi

でアクセスすると、abc1の部分がabc2でもhoihoiでも、
どのような値でもそれに応じたtplを開くことが出来ます。

今回のコードの方が前回に比べ、何か利点でもあるのでしょうか?
規則性でいうと、index.php?name=の部分までは同じURLにしたいと思っています。
解説いただけると幸いです。
dkazuto
投稿日時: 2013/2/4 11:43
対応状況: −−−
一人前
登録日: 2012/5/10
居住地:
投稿: 95
Re: ページを同じディレクトリ内に量産したい
kanaryo様

変更点は以下の部分かと思います。

preg_match('/^[a-zA-Z0-9]+$/',$_GET['name'])

これは、nameで渡される値に制限をかけるためのものです。

たとえば、hoge_hoge.tplというテンプレートを作成して、開いて見てください。

おそらく空白ページになってしまうかと思います。
この処理によって特定のパターンの文字列しか受け付けないようにしています。
※この場合、アンダースコアを無視するようになっています。

変な名前が指定されたときに空白ページを
表示せず、index.tpl(デフォルトのテンプレート)を表示するようにするための対策と言えます。

詳しくは「正規表現」で検索してもらえますと
色々な条件の指定方法が出てくるかと思います。

kanaryo
投稿日時: 2013/2/4 17:43
対応状況: 解決済
常連
登録日: 2011/10/18
居住地:
投稿: 66
Re: ページを同じディレクトリ内に量産したい
dkazuto様
yuh様

ご親切にアドバイスいただきありがとうございました!

おかげさまで希望のアクションが実現いたしました。
少しのCSSと、かじった程度のhtmlしか分からないため、
ショボイ静的ページしか作成できない私ですので、
今回のように希望のアクションを実現させるために、
・修正するべきファイル名、
・コードを記述 or 修正する箇所、
・コード内容
の3点を教えていただけることが何より嬉しいです!!

また、「教えて下さい!」のフォーラムにちょくちょく現れると思いますが、
その時もご指導いただければ何より幸いです。

この度はありがとうございました。m(__)m
« 1 (2)
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は89,073名です
総投稿数は110,023件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1296
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.