Re: 新カスタムレイアウトプリセットについて

2016年1月17日 at 2:34

www.djkazu.supervinyl.net
というサイトをみていただけないでしょうか?
そこのsvg下にtitleがあります。aboutとfavoritとdiaryです。
ここをレイアウトプリセットにしています。
記事ブロックにしています。
aboutにしたらfavoritとdiary部分もaboutになります。
そこでpage_themeに動きはいっしょなのにtitleをかえたいだけのパターンをつくって増やしています。
効率的でないので疑問に思って書き込みしました。
うまく伝わればいいんですがよろしくお願いします。

Re: 新カスタムレイアウトプリセットについて

2016年1月17日 at 5:58
リンク切れてます。。。
 

Re: 新カスタムレイアウトプリセットについて

2016年1月17日 at 10:38
申し訳ありません。

http://djkazu.supervinyl.net/

こちらです。
よろしくお願いします。
 

Re: 新カスタムレイアウトプリセットについて

2016年1月17日 at 18:04
同じ動きをするならページテンプレートに書くほうがいいです。
ページ名と同じではないようなので、ページ属性を使ってやるといいと思います。
ページ属性で テキスト→ ID: parallax_title で作成
<h1 class="title" data-0-center-top="transform:translate(0,0px); opacity:1;" data-300-center-top="transform:translate(0,100px); opacity:0;"><?php echo h($c->getAttribute('parallax_tile'))?></h1>

のようなイメージです。このタイトルに関しては、文字の変更はあっても、同じ文言を同じページで2回使うことはないでしょうから、レイアウト機能を使う必要はないと思います。
その下の画像や文章に関しては2列3行で作られていますが、今後増減する可能性があると思うので、レイアウト機能を使うメリットはあると思います。
 

Re: 新カスタムレイアウトプリセットについて

2016年1月18日 at 0:49
ありがとうございます。

ページテンプレート?カスタムテンプレートではないのでしょうか?
そこでお聞きしたいことがるのですが、カスタムテンプレートならview.phpをつくらなければならないと思うのですがどの部品からコピーしてきたらよろしいでしょうか。
もしくは最初から作成するのでしょうか?
blocks→任意名→templates→任意名.php(view.php)
中身は
<?php defined('C5_EXECUTE') or die("Access Denied.");

<h1 class="title" data-0-center-top="transform:translate(0,0px); opacity:1;" data-300-center-top="transform:translate(0,100px); opacity:0;"><?php echo h($c->getAttribute('parallax_tile'))?></h1>

<?php }
でいいのでしょうか。
もしくはこの記述はどこへ書くのでしょうか。
今回新しく作成するview.phpにだと思うのですが。
<h1 class="title" data-0-center-top="transform:translate(0,0px); opacity:1;" data-300-center-top="transform:translate(0,100px); opacity:0;"><?php echo h($c->getAttribute('parallax_tile'))?></h1>

ページ属性で テキスト→ ID: parallax_title で作成
とありますがハンドルでよろしかったでしょうか。
タイトルは任意名でいいと思います。

わかっていなくてお手数ばかりおかけしますが、よろしくお願いいたします。
 

Re: Re: 新カスタムレイアウトプリセットについて

2016年1月18日 at 7:33
ページテンプレートとは
themesフォルダ内のdefault.php などの事です。
http://github.com/concrete5/concrete5/tree/develop/web/concrete/themes/elemental

今回作成されようとしているサイトでは、下記の語句の意味を理解する必要があります。あくまでも僕が作るとすればという前提ですが。。

・テーマ
・ページテンプレート
・ページタイプ
・カスタムテンプレート
・レイアウト機能
・カスタムレイアウトプリセット
・エリアのカスタムクラス
・ブロックのカスタムクラス
・ページ属性

上記はすべて違うものです。それぞれがどのような特徴を持っていて、どのように作用するのか、を理解する必要があります。分からない語句はありますか?
 

Re: 新カスタムレイアウトプリセットについて

2016年1月18日 at 23:33
メッセージありがとうございます。

申し訳ありません。
ほぼ、わかってないと思います。
自己解釈です。

・テーマ
創りたいテーマ

・ページテンプレート
全幅や左サイトみたいなページのカタチ
default.phpやleft_sidebar.phpなど

・ページタイプ
わかりません。

・カスタムテンプレート
autonaviでグローバルメニューなどをつくるときに使う。
blocksのフォルダにveiw.phpを作成して見た目をかえる(カスタムする)

・レイアウト機能
2カラムや3カラムとレイアウトを作成できる

・カスタムレイアウトプリセット
ブロックをhtml化にして表示できる
同じモノを繰り返し表示できる
page_theme.phpで設定する

・エリアのカスタムクラス
エリアをクラス指定できる
page_theme.phpで設定する

・ブロックのカスタムクラス
ブロックまたはエリアをクラス指定できる
page_theme.phpで設定する

・ページ属性
わかりません。

私の場合はサイトを創っていきながら各機能を覚えたほうがいいと思ってやっています。
お手数ばかりおかけして申し訳ありません。
 

Re: Re: 新カスタムレイアウトプリセットについて

2016年1月19日 at 7:55
おおっ!!ほぼあっています。
「ページテンプレート・ページタイプ」は非常に関係が密なものです。
「ページテンプレート」はテーマ内に直接ファイルを設置するエリアやレイアウトなどを書いたファイルのことです)
「ページタイプ」はページの種類です。「ニュース記事用」「お知らせ記事用」など用途によってを分別します。管理画面で設定します。

「ページ属性」は、そのページに引っ付けられているデータです。商品一覧ページを作るときなどに重宝します。実際にあるものだと「オートナビから省く」などがこれにあたります。

さて、本題の「カスタムレイアウトプリセット」ですが、
あくまで想定されているのグリッドシステムの設定です。
デフォルトのレイアウト機能は、2カラムで追加したとき、真ん中で分かれます。
デフォルトのbootstrapでいうと <col-md-6><col-md-6>。それを<col-md-4><col-md-8>などにするのをバーのドラッグで設定するのではなく、追加したときにこれを設定してやろうというものです。
ですのでグリッドシステム用のhtmlタグを吐き出すことを想定しています。その機能を応用して今回のようなものに使えるのは、僕が勉強になりました。
上記のようなことを想定されていることから中のコンテンツ(画像や文章など)はブロックなど他の機能で作るほうが効率がいいかと思います。
 

Re: 新カスタムレイアウトプリセットについて

2016年1月19日 at 9:34
ありがとうございます。
追記したモノはメモっておきます。

ただ知っていたとしても、いまいちわかってないんですよ。
あとどこのファイルに書いたりして使うとかもわかっていません。
調べてもどれが正解なのかもわからないんですよ。
カスタムレイアウトプリセットは苦労しました。
送っていただいたgitのページをみると書いてあるというオチでした。

本題ですが、
ページ属性で テキスト→ ID: parallax_title で作成
<h1 class="title" data-0-center-top="transform:translate(0,0px); opacity:1;" data-300-center-top="transform:translate(0,100px); opacity:0;"><?php echo h($c->getAttribute('parallax_tile'))?></h1>
の続きでやり方を教えてください。

今はトップページだけでもカスタムレイアウトプリセットを5カ所使うので5カ所も記述しています。
about、favorite、diaryは使い回したいんですけども。
できないシステムなら現状のままでもいいんですが。

どうぞよろしくお願いします。
 

Re: 新カスタムレイアウトプリセットについて

2016年1月19日 at 11:36
ありがとうございます。
追記したモノはメモっておきます。

ただ知っていたとしても、いまいちわかってないんですよ。
あとどこのファイルに書いたりして使うとかもわかっていません。
調べてもどれが正解なのかもわからないんですよ。
カスタムレイアウトプリセットは苦労しました。
送っていただいたgitのページをみると書いてあるというオチでした。

本題ですが、
ページ属性で テキスト→ ID: parallax_title で作成
<h1 class="title" data-0-center-top="transform:translate(0,0px); opacity:1;" data-300-center-top="transform:translate(0,100px); opacity:0;"><?php echo h($c->getAttribute('parallax_tile'))?></h1>
の続きでやり方を教えてください。

今はトップページだけでもカスタムレイアウトプリセットを5カ所使うので5カ所も記述しています。
about、favorite、diaryは使い回したいんですけども。
できないシステムなら現状のままでもいいんですが。

どうぞよろしくお願いします。
 

Re: 新カスタムレイアウトプリセットについて

2016年1月19日 at 11:36
ありがとうございます。
追記したモノはメモっておきます。

ただ知っていたとしても、いまいちわかってないんですよ。
あとどこのファイルに書いたりして使うとかもわかっていません。
調べてもどれが正解なのかもわからないんですよ。
カスタムレイアウトプリセットは苦労しました。
送っていただいたgitのページをみると書いてあるというオチでした。

本題ですが、
ページ属性で テキスト→ ID: parallax_title で作成
<h1 class="title" data-0-center-top="transform:translate(0,0px); opacity:1;" data-300-center-top="transform:translate(0,100px); opacity:0;"><?php echo h($c->getAttribute('parallax_tile'))?></h1>
の続きでやり方を教えてください。

今はトップページだけでもカスタムレイアウトプリセットを5カ所使うので5カ所も記述しています。
about、favorite、diaryは使い回したいんですけども。
できないシステムなら現状のままでもいいんですが。

どうぞよろしくお願いします。
 

Re: Re: 新カスタムレイアウトプリセットについて

2016年1月19日 at 13:30
ごめんなさい、勘違いしてました。今までの事は忘れてください。

トップページにあるabout favorite diary ですね。
どのように運用するかに寄りますが、
ページタイトルブロックでカスタムテンプレートを使ってはどうでしょうか?

ページタイトルブロックで[カスタムタイトル]にaboutと入力し「ページ名を入力した・・・・」にチェックを入れて保存

次に
application/blocks/page_title/templates/parallax_title.phpを作成し下記を入力して保存。

<?php defined('C5_EXECUTE') or die("Access Denied."); ?>
<h1 class="title" data-0-center-top="transform:translate(0,0px); opacity:1;" data-300-center-top="transform:translate(0,100px); opacity:0;"><?php echo h($title)?></h1>

ページに戻り、先ほど設置したページタイトルブロックにカスタムテンプレートを当てる。
これでどうでしょうか?
 

Re: 新カスタムレイアウトプリセットについて

2016年1月20日 at 0:24
いえいえ、とんでもないです。

できました!
書いてあるとおりに作成してあててみました。
タイトルの名前をかえた複製もできました。
ありがとうございます。

ちなみにABOUTの下にあるサブタイトルやその下の左右からくるコメントのパララックスはカスタムテンプレートをつかって他のブロック方法でできないでしょうか?
ページタイトルはタイトルなので改行とかできないですよね。

1.サブタイトルのパララックスは記事ブロックとかでできたりしないでしょうか。

2.サブタイトルの左右からくるコメントのパララックスは記事ブロックでできないでしょうか。

3.下層ページ(aboutおよびschedule)にある左が画像で右がコメントのパララックスはできないでしょうか。

ちなみにコアのblocksのcontentのview.phpをつかってタイトルで教えていただいた記述でサブタイトルを試してみましたが記事ブロックでカスタムテンプレートの設定はできませんでした。そう甘くはなかったですww

できなければカスタムレイアウトプリセットを使うつもりです。

どうぞよろしくお願いします。
 

Re: Re: 新カスタムレイアウトプリセットについて

2016年1月20日 at 7:37
1はとりあえず、htmlブロックとカスタムレイアウトプリセットの合わせ技
2,3はhtmlブロックと画像ブロックとカスタムレイアウトプリセットの合わせ技
で行けると思います。

view.phpをどこにコピーしてどののように変更されましたか?
 

Re: 新カスタムレイアウトプリセットについて

2016年1月20日 at 22:32
失敗したやり方ですか?

二行になるサブタイトルは
コアのblocksのcontentのview.phpをコピーしてapplication/blocks/comment_block(任意名)/templates/parallax_up_down_subtitle.php(view.php)にしました。

記述は
<?php defined('C5_EXECUTE') or die("Access Denied."); ?>
<h2 class="title" data-0-center-top="transform:translate(0,0px); opacity:1;" data-300-center-top="transform:translate(0,100px); opacity:0;"><?php echo h($title)?></h2>
で試しました。
ブロックは記事ブロックにしました。
見事に動きませんでした。


1はカスタムレイアウトプリセットと記事ブロックにしています。
htmlブロックはhtmlコードを貼付けるので今回はパスしておきます。

2と3はちょっと難しいと思いますがやってみます。
 

Re: Re: 新カスタムレイアウトプリセットについて

2016年1月21日 at 6:24
このコードはページタイトルブロック用のカスタムテンプレートなので記事ブロックでは使えません。
記事ブロックではカスタムテンプレートではなく、カスタムクラスを使う方が運用上いいと思います。
記事ブロックのカスタムクラスの設定は
page_theme.phpのgetThemeEditorClasses()です。
http://concrete5-japan.org/help/5-7/developer/designing-for-concrete5/advanced-css-and-javascript-usage/adding-custom-css-classes-to-blocks-areas-and-the-editor/...