Mevcut görünüme bir blok programlı olarak nasıl içe aktarılır?
Bir bloğu ayarlarıyla mevcut görünüme programlı olarak içe aktarmam gerekiyor .

Tüm görünümü nasıl dışa aktaracağımı ve programlı olarak nasıl içe aktaracağımı biliyorum. Ancak tüm görünümü dışa aktarmak ve ardından tüm görünümü içe aktarmak istemiyorum. Benim görüşüme göre 25 blok var, bu yüzden bana aktarmam için 4000 satırlık kod veriyor. Yalnızca yeni bloğumun dışa aktarım kodunu kopyalayabilirim. Ancak kodun yalnızca bu bölümünü mevcut görünüme nasıl aktarabilirim ? Mümkün mü? Herhangi bir çözüm bulamıyorum.
Yanıtlar
Kullanıcı arayüzünde belirttiğiniz belirtilen "blok", dahili olarak "ekran" olarak adlandırılır. Görüntüler, display
özellikteki görünüm nesnesinin içinde saklanır (örn. $view->display
).
Dışa aktarma kodunun görünümlerine bakarsanız , yöntem tarafından oluşturulan dışa aktarılan blokların (ör /* Display: Block 1 */
. /* Display: Block 2 */
, Vb.) Modelini görmeniz gerekir views::export().
Her blok (yani ekran) için, $handler = $view->new_display(...)
ardından $handler->display...
o ekran için ilgili alanları / filtreleri ekleyen birçok satır görmelisiniz .
Tek bir ekranı programlı olarak içe aktarmak için aşağıdaki gibi bir şey yaparsınız:
$view = views_get_view('my_existing_view'); // @TODO: Add my new display handler code $view->save();