1
내 모듈 페이지 필드에서 편집했습니다. 오류없이 모든 작품을하지만 난 하이퍼 링크가 표시됩니다 페이지로 이동하면 그냥 나에게SilverStripe 페이지 필드가 작동하지 않습니다.
내 ImageBlock.php 클래스 ImageBlock를 표시하는 블록
{
private static $db = array('WebsiteLinkHyper' => 'VarChar'); // THIS IS ADDED BY ME
private static $many_many = array(
'Images' => 'Image'
);
private static $many_many_extraFields = array(
'Images' => array('SortOrder' => 'Int')
);
public function getCMSFields()
{
$fields = parent::getCMSFields();
$uploadField = null;
if (class_exists('SortableUploadField')) {
$uploadField = SortableUploadField::create('Images', _t('ImageBlock.IMAGES', 'Images'));
} else {
$uploadField = UploadField::create('Images', _t('ImageBlock.IMAGES', 'Images'));
}
$fields->addFieldToTab('Root.Main', $uploadField);
$fields->addFieldToTab('Root.Main', TextField::create('WebsiteLinkHyper', 'Link'));// THIS IS ADDED BY ME
$this->extend('updateCMSFields', $fields);
return $fields;
}
}
내 imageBlock.ss를 확장
<% loop $Images.Sort('SortOrder') %>
<a href="$WebsiteLinkHyper"> //THIS IS ADDED
<figure>
$Tag
<figcaption>$Title</figcaption>
</figure>
</a>
<% end_loop %>
관리자 패널의 모든 것이 제대로 작동하지만 페이지로 이동하면 콘텐츠 블록이 표시되지만보기 페이지 소스를 클릭하면이 빈 href가 표시됩니다><a href="">
내가 뭘 잘못하고 있니?
지금 나는 적어도 이것을 얻습니다,이 {} – Thranduil
예, 중괄호를 넣을 수는 있지만, 템플릿 프로세서가 sirverstripe 변수를 벗어나는 데 사용됩니다. –
그럼 어떻게해야합니까? – Thranduil