Chcę tylko bloków na stronie głównej. Ponieważ nie mam żadnych węzłów i chcę zachować stronę główną jako / node, otrzymuję komunikat „Nie utworzono jeszcze treści strony głównej”. wiadomość na mojej stronie.
Jak to obejść?
Kto by zgadł? Jest do tego moduł. Sprawdź moduł pustej strony początkowej. Z zaledwie 10 liniami kodu, musi to być jeden z najprostszych modułów.
function MYTHEME_preprocess_page(&$vars) { if (drupal_is_front_page()) { unset($vars['page']['content']['system_main']['default_message']); //will remove message "no front page content is created" drupal_set_title(''); //removes welcome message (page title) }
MYTHEME
,MYMODULE
prawda?Możesz to zrobić w pliku szablonu motywu:
źródło
Szybkie obejście CSS w celu ukrycia „komunikatu o braku zawartości” polega po prostu na dodaniu następującego wiersza w pliku CSS:
źródło
Komunikat „Nie utworzono jeszcze treści strony głównej”. jest wyświetlany z wywołania zwrotnego strony dla strony, której używasz jako strony głównej, node_page_default () , która zawiera następujący kod.
Jest po prostu wyprowadzany, ponieważ strona nie ma węzłów; wiadomość nie jest związana z tym, że strona główna ma (lub nie ma) bloków.
Jeśli chcesz zachować tę stronę główną, ale nie widzisz tego komunikatu, możesz zaimplementować następujący zaczep w module.
Inną alternatywą byłoby dodanie następującego kodu na końcu pliku settings.php.
Jeśli w Twojej witrynie są włączone inne języki, możesz dodać podobny wpis dla każdego języka. Na przykład dla języka włoskiego kod do wprowadzenia będzie następujący. (
_en
zastępuje się_it
.)Przy użyciu tej metody „Nie utworzono jeszcze treści na stronie głównej”. będą zastępowane w każdym miejscu, w którym jest używany, nie tylko na pierwszej stronie. Ten ciąg znaków jest zwykle używany tylko na stronie głównej, gdy strona główna jest domyślna. Nie wiem, czy jakikolwiek inny moduł korzystający z tego ciągu, ale przed zamianą tego ciągu na pusty ciąg
$conf['locale_custom_strings_en']['']
, sprawdziłbym, czy nie ma włączonych modułów, które go używają (oprócz modułu Węzła).źródło
Mam szablon dla wszystkich nowych projektów, który zawiera:
To wszystko, nie muszę już nigdy zajmować się domyślną stroną węzła.
źródło
To jest fajny fragment, aby pozbyć się tego błędu bez mylenia z innymi treściami umieszczonymi w obszarze zawartości . Spowoduje to jedynie ukrycie tego błędu i normalne wyświetlenie pozostałej zawartości.
Ten fragment kodu jest opublikowany pod adresem Usuń „Nie utworzono jeszcze treści strony głównej”. w domyślnej instalacji Drupal .
źródło
podłącz swoją page.tpl.php do strony - front.tpl.php i rób co chcesz, ciesz się :-)
źródło
Nie jestem pewien, czy można to zrobić z poziomu interfejsu administracyjnego Drupala.
Jednym ze sposobów na osiągnięcie tego, o czym wiem, jest dodanie
if
do twojego oświadczeniapage.tpl.php
. Znajdź linię taką jak:... i zmień na:
To w zasadzie wydrukuje zawartość strony głównej na wszystkich stronach, które nie są stroną główną. Ale może to pozostawić ci dziurę w środku strony.
Możesz więc zrobić kilka innych korekt
page.tpl.php
i być może obejmować więcej otaczających tagów kontenerów. Dalsza zmiana tamplate, umieszczając nagłówek nad pierwszym paskiem bocznym strony głównej:... i przeniesienie początkowej
if
instrukcji i umieszczenie jej bezpośrednio w kontenerze treści:... przyniosło następujące wyniki:
źródło
$page['content']
.Nie wiem, dlaczego tak bardzo to komplikujecie. (cóż, nie wiem, czy działają sposoby abd, ale jeśli to nie zadziała, skorzystaj z poniższego rozwiązania.
w page.tpl.php musisz znaleźć tę część kodu:
(cóż, mam to jest mój motyw adaptacyjny 7x-3.2)
Wszystko, co musisz zrobić, to usunąć! Wszystkie linie
Ta część php po prostu mówi:
Jeśli „tytuł” istnieje, wydrukuj go czcionką H1. Jest wydrukowany na stronie internetowej w obszarze, w którym napisany jest kod. W przypadku motywu adaptacyjnego znajduje się w obszarze Nagłówek.
Jeśli nie masz page.tpl.php w swoim podtemacie, musisz go znaleźć w głównym motywie, a następnie skopiować go do tej samej lokalizacji, co główny motyw, do swojego podtematu.
W AT jest to /templates/page.tpl.php
oznacza to, że w podtematie motywu adaptacyjnego musisz utworzyć folder o nazwie „szablony”, a następnie skopiować tam page.tpl.php, a następnie usunąć część kodu wspomnianą powyżej.
Ważne jest, aby nie wprowadzać żadnych zmian w motywie Core!
źródło
Umieść ten kod w page.tpl.php
Lub
Na stronie - front.tpl.php
źródło
możesz użyć Zastąpienia ciągów Moduł Zastąpienia ciągów do zamiany
„Nie utworzono jeszcze treści na pierwszej stronie na pierwszej stronie” do „”
źródło
Lepsze do osiągnięcia tej pracy jest rozbrojone
$page['content']['system_main']['default_message']
whook_preprocess_theme
lub wpage.tpl.php
lubpage--front.tpl.php
.odnaleźć
i zamień na poniższy kod.
LUB
Cieszyć się!!
źródło
W Drupal 8 ten sam „Nie utworzono jeszcze treści na pierwszej stronie”. jest również wyświetlany, np. zaraz po utworzeniu nowej witryny i wejściu na jej stronę główną (stronę główną). Ale wszystko zostało uproszczone, jeśli chcesz je wymienić lub usunąć ... Wszystko, co jest potrzebne, to:
/admin/structure/views/view/frontpage
(aby edytować widok o nazwie „Frontpage”).Aby zweryfikować zmiany, przejdź do strony głównej. W razie potrzeby powtórz powyższe kroki, aby dalej dostroić wiadomość.
źródło