То, что вы пытаетесь сделать, не будет работать. Проблема в том, что $related_pod
не является объектом класса Pods, и поэтому вы не можете вызвать метод template()
на нем.
Можно использовать идентификатор связанного объекта, чтобы построить второй объект Pods для связанного сообщения, который затем можно вызвать методом template()
. Обычно мы не будем этого делать, потому что нам это не нужно, и это не самый эффективный способ работы.
Вот как вы можете это сделать. ВАЖНО: это предполагает, что «top_feature» - это одно поле выбора, как в случае с OP. Это не будет работать для поля множественного выбора.
`` `
$mypod = pods('custompage', 'page-slug');
$relationship_field = $mypod->field('top_feature');
if ($relationship_field) {
//get ID of related item
//Depending on content type you may need to use, 'id', instead of 'ID'
$related_item_id = pods_v('ID', $relationship_field);
$related_pod = pods('name_of_related_pod', $related_item_id, true);
if (is_a($related_pod, 'Pods' && $related_pod->id() === $id)) {
$related_pod->template('FeatureTemplate');
}
}
` ``
Это единственный выбор, спасибо :) – Marklar