Úvodní stránka › Fórum podpory WordPressu › Problémy s WordPressem › Nefungující stránka chráněná heslem
Štítky: heslo, stránka, Zaheslovaná stránka
Zvolené téma obsahuje celkem 11 odpovědí. Do diskuze (5 účastníků) se naposledy zapojil uživatel admin a poslední změna je stará 10 let, 2 měsíce.
-
AutorPříspěvky
-
27. ledna 2014 (17:08) #6415
Zdravím,
mám nastavenou v adminu stránku na heslo, ale vůbec to nefunguje. Tváří se to jako by to byla obyčejná stránka bez hesla. Když na ni kliknu, tak vidím veškerý obsah a ne něco jako zadejte heslo.Je to má vlastní šablona a tipuji, že jsem tam nedopsal nějákou podmínku pro zaheslovanou stránku.
Stránka, kterou potřebuji mít zaheslovanou nečte z výchozí šablony
page.php
, ale
vlastni-stranka.php
Zde je obsah souboruvlastni-stranka.php
:< ?php $cat_args=array( 'orderby' => 'name', 'order' => 'ASC', ); $categories=get_categories($cat_args); foreach($categories as $category) { $args=array( 'showposts' => -1, 'category__in' => array($category->term_id), 'caller_get_posts'=>1, 'post_type' => 'katalogy' ); $posts=get_posts($args); if ($posts) { echo '<div class="clear"></div><div class="category-name">' . $category->name.' </div> '; foreach($posts as $post) { setup_postdata($post); // obsah ?>
Poprosím o každé rady. Díky.
27. ledna 2014 (18:39) #1739827. ledna 2014 (19:26) #17399To je mi k ničemu. Stránka mi vůbec nevrací, abych zadal heslo.
28. ledna 2014 (7:17) #1740028. ledna 2014 (8:38) #17401Ano.
28. ledna 2014 (8:48) #17402Nerozumím moc tomu kódu… Tam nejde o klasické stránky, ale vlastní typ obsahu katalogy. Která je vlastně ta hlavní zaheslovaná stránka? Vůbec to není v kódu uvedeno, je tam pouze výpis nějakých souvisejících katalogů?
28. ledna 2014 (9:33) #17403Přesně tak. Je tam výpis článku z custom post type.
Ve zkratce to vypíše všechny kategorie a všechny články daných kategorií pod sebe daného post typu.
A výpis mám na obyčejné zaheslované stránce, která nenačíta z page.php ale vlastni-soubor.php, aby bylo možné načítat ten custom post type.
28. ledna 2014 (9:56) #17404Ano, ale klasická funkce zaheslované stránky (tedy zadáním hesla v administraci) funguje podle mě pouze pro obsah této stránky, který je v hlavním (primárním) loopu a může tak být zobrazován např. pomocí funkce the_content() (a samozřejmě další související věci, např. komentáře). Výpis příspěvků vlastního typu obsahu s tím nijak nesouvisí… Pokud chcete skrýt celý tento výpis, tak to budete muset udělat trochu jinak, např. podmínkou pomocí funkce post_password_required().
28. ledna 2014 (18:38) #17405tak jsem z toho udělal podmínku, do toho jsem dal pole pro zobrazení hesla atd a do else jsem obalil stávající kód. Bohužel to stále nefunguje a obsah se normálně zobrazuje.
Kód vypadá takto:
<?php if ( post_password_required() ) { ?>
<form method="post" action="/wp-login.php?action=postpass">
<input type="password" name="post_password"/>
<input type="submit" value="Submit" name="Submit"/></p>
</form>
<?php } else { ?>
<?php
$cat_args=array(
'orderby' => 'name',
'order' => 'ASC',
);
$categories=get_categories($cat_args);
foreach($categories as $category) {
$args=array(
'showposts' => -1,
'category__in' => array($category->term_id),
'caller_get_posts'=>1,
'post_type' => 'katalogy'
);
$posts=get_posts($args);
if ($posts) {
echo '<div class="clear"></div><div class="category-name">' . $category->name.' </div> ';
foreach($posts as $post) {
setup_postdata($post); ?>
//obsah souboru
<?php
} // foreach($posts
} // if ($posts
} // foreach($categories
?>29. ledna 2014 (9:26) #17406Doporučil bych Vám se podívat na to, jak to řeší oficiální šablony (Twenty Fourteen, Twenty Thirteen apod.). To by Vás mohlo nakopnout.
29. ledna 2014 (12:54) #17407No něják to už vyřeším.
Díky.
1. února 2014 (11:19) #17408Funkce post_password_required() bude fungovat pouze v hlavním (primárním) loopu stránky, tedy mezi
while ( have_posts() ) : the_post();
a
endwhile;
Pokud ji chcete použít až za obsahem samotné stránky pro nějaký další výpis, tak ten další výpis musíte buď “zanořit” do něj nebo použít ID stránky jako parametr pro tuto funkci.
Prohlédnout si můžete příklad z šablony Twenty Ten.
-
AutorPříspěvky
Pokud chcete odpovědět na toto téma, musíte se nejdříve přihlásit.