登録日
2017年3月2日

メンバー検索

  

tatu_ryo

名前(ニックネーム)
leaps-nakagawa
自分のconcrete5サイト
ホームページ
自己紹介
concrete5.org のユーザー名
concrete5 Slack Team ID
Twitterアカウント
フォーラム総投稿数
7

コミュニティバッジ

投稿

1から7までを表示 (計7)

Re: オプションリスト属性で複数の値を設定したとき、翻訳後の個々の値にタグ付けして出力したい

無理あると思いますが、これでやり過ごしました。
$document_category = $r->getAttribute('document_category', 'display');
$document_category = explode("<br/>" , $document_category);
array_pop($doc_category);

Posted on 1月 11, 2019 at 11:56 午前

オプションリスト属性で複数の値を設定したとき、翻訳後の個々の値にタグ付けして出力したい

検索ブロックのカスタムテンプレートで表示を調整しているのですが、
オプションリスト属性で複数の値を設定したとき、
タグ付けした個々の値を’翻訳して’出力するにはどうすれば良いのでしょうか。
※値はインターフェース翻訳の設定をしています。

$document_category = $r->getAttribute('document_category');
<?php
if ($document_category) {
echo "<div class=\"document_category\">";
foreach($document_category as $dc) {
echo '<span>'. $dc .'</span>';
};
echo "</div>";
} ?>



レンタルサーバー
cpi ACE01

# concrete5 Version
Core Version - 8.4.2
Version Installed - 8.4.2
Database Version - 20180716000000

# Server Software
Apache

# PHP Version
7.0.32

Posted on 1月 09, 2019 at 7:43 午後

Re: Re: Block Designer Pro のブロック内容(repeatableの中身)をPage Listから表示したい

返答遅くなってすみません、
$ulItem = $bObj->HeaderFeatureUl;
var_dump($ulItem);
でNULLがでます。
上記はarray型でもないようでした。

Posted on 2月 21, 2018 at 4:19 午後

Re: Block Designer Pro のブロック内容(repeatableの中身)をPage Listから表示したい

色々試してみてはいますが、concrete5及びblock designer proの理解度が低く現状は以下の通りです。

Repeatableスラッグが「HeaderFeatureUl」で、
取り出したいリピート要素のスラッグ名は「HeaderFeatureLi」なんですがそこまで辿りつかないです。。


//--------- 以下ソース

foreach($pages as $page) {
$blocks = $page->getBlocks('ContentHeader');//ContentHeader エリア名
$_blocks = array();
foreach($blocks as $block){
if($block->btHandle == 'cont_header'){//cont_header ハンドル名※block designer pro
$_blocks[] = $block;
}
}
$blocks = $_blocks;
//if (is_object($blocks[0])) {
$bObj = $blocks[0]->getInstance();
$headercopy = $bObj->HeaderCopy;//HeaderCopy スラッグ名 表示可(テキスト)

$file = File::getByID($bObj->HeaderImage);
$headerimgURL = $file->getURL();//HeaderImage スラッグ名 表示可(URL)

foreach($bObj as $item){
var_dump($item);
}
//}
}

//------ 以下var_dump($item)結果
array(3) {
[0]=>
string(14) "HeaderImage"
[1]=>
string(13) "HeaderCopy"
["HeaderFeatureUl"]=>
array(0) {}
}
array(0) {}
NULL
NULL
string(2) "67"
string(200) "メインコピーのテストテキストテキストテキストテキストテキストテキスト
テキストテキストテキストテキストテキストテキストテキストテキスト"

Posted on 2月 17, 2018 at 7:19 午後

Re: Block Designer Pro のブロック内容(repeatableの中身)をPage Listから表示したい

アドバイスありがとうございます、出先から戻り次第試してみます。

Posted on 2月 15, 2018 at 6:00 午後

Re: Block Designer Pro のブロック内容(repeatableの中身)をPage Listから表示したい

返信ありがとうございます。わかりづらくてすみません。
リピートするコンテンツ部のソースは色々試しましたがだめだったので先述のコードからは省いてます。

投稿のコード内、日本語箇所がそれぞれ以下にあたります。
「エリア名」ー テーマ内エリア名
「カスタムブロックハンドル」ー Block Derigner Pro の任意でつけた ハンドル名
「カスタムブロックスラッグ※表示1」ー Block Derigner Pro の任意でつけた スラッグ名
「カスタムブロックスラッグ※表示2」ー Block Derigner Pro の任意でつけた スラッグ名(上記とは別です。)

page_list カスタムテンプレートforeach($pages as $page){}内で
「$headercopy」で文字列、「&headerimgURL」で画像URLが問題なく表示可能です。

Posted on 2月 15, 2018 at 5:44 午後

Block Designer Pro のブロック内容(repeatableの中身)をPage Listから表示したい

以下のソースをpage_listのカスタムテンプレート内で実行してBlock Designer Pro のリピート要素以外のコンテンツは表示できましたが、
Repeatable設定している中のコンテンツは呼び出し方がわからず躓いています。
Repeatable内コンテンツの表示はどうすればいいかわかる方がおりましたら、ご教授いただけますと幸いです。


https://gist.github.com/hissy/5023088 を使わせてもらいました。
//------------

foreach($pages as $page) {
$blocks = $page->getBlocks('エリア名');
$_blocks = array();
foreach($blocks as $block){
if($block->btHandle == 'カスタムブロックハンドル'){
$_blocks[] = $block;
}
}
$blocks = $_blocks;
if (is_object($blocks[0])) {
$bObj = $blocks[0]->getInstance();
// print property of the block
$headercopy = $bObj->カスタムブロックスラッグ;
$file = File::getByID($bObj->カスタムブロックスラッグ);
$headerimgURL = $file->getURL();
}
}
//

# concrete5 Version
Core Version - 8.3.2

# mySQL
5.6.35

# concrete5 Packages
Block Designer (2.9.1), Block Designer Pro (2.8.5), Page Selector Attribute (2.0), Pixel Theme (2.0.1)

# Server Software
Apache/2.2.32 (Unix) mod_wsgi/3.5 Python/2.7.13 PHP/7.1.8 mod_ssl/2.2.32 OpenSSL/1.0.2j DAV/2 mod_fastcgi/2.4.6 mod_perl/2.0.9 Perl/v5.24.0

# Server API
apache2handler

# PHP Version
7.1.8

Posted on 2月 15, 2018 at 1:44 午後