Kommentare von

beats TEST blog

fehlende Fusszeileneinträge

Beat am |

Der dauerhafte Beitrag "Styx-Stand: 15.12.2019, 09:37" ist einfach ein Beispiel.

Wenn Du auf das Menü Recht(s) klickst, siehst Du dort zwei Einträge. Bei Impressum sind Kommentare zugelassen, werden aber moderiert (Fusszeile sichtbar). Bei der Datenschutzerklärung werden Kommentare nicht zugelassen und deshalb sieht man dort auch keine Fusszeile. Genau wie bei "Styx-Stand: 15.12.2019, 09:37".

Ich kann mich nur wiederholen: Das hängt irgendwie mit der Funktion "Kommentare für diesen Eintrag zulassen" zusammen.

Ian Styx am |

Aha. Und wo genau ist jetzt ein/das Problem???
Die $entry.has_comments und $entry.has_trackbacks generieren false oder true u.a. aufgrund der zugelassenen Kommentare im entryform, siehe, github.com/ophian/styx/blob/master/include/functions_entries.inc.php#L1330 ff

Beat am |

Siehe neuster Blog-Beitrag.

Ich hätte gerne eine befüllte Fusszeile, auch wenn ich bei einem Beitrag keine Kommentare zulasse.

Ian Styx am |

Ahhh.. du meinst es wird im zweiten Teil, also Datenschutzerklärung zwar der Footer gebildet, aber keine Kategorie ausgeschmissen.

Ja, seltsam...

Platziere mal eine cat Ausgabe hinter die ul plainlist, in etwa so:

<ul class="plainList"><pre>{$entry.categories|print_r}</pre>

Und dann schauen wir uns das mal auf Recht(s) an.

Beat am |

Kann ich tun. Im Moment denke ich jedoch, dass ich mir dieses Problem eingebrockt habe, weil mein erster Fusszeileneintrag "Kommentare" ist. Die Kombination aus "0 Kommentare" und "für diesen Artikel keine Kommentare zulassen" zerschiesst wohl meine Anzeige.

-> auf styx.dokumenzi.ch wird die Fusszeile angezeigt. Da verwende ich jedoch die Original entries.tpl. Es werden also zuerst die Kategorien angezeigt und erst danach die "0 Kommentare".

Ian Styx am |

Und ich kann natürlich nur das bedenken, was ich auch kenne, also pures Pure, sozusagen ;-)

Beat am |

:shame: SORRY!

Wenn im Original-Pure-Footer zuerst die Anzahl Kommentare und danach die Kategorien angezeigt würde, dann könnte ich damit leben (auch damit, dass die Stichworte nur in der Einzel-Beitragsansicht (und auf einer eigenen Zeile) dargestellt werden).

Aus meiner Sicht interessiert Besucher jedoch zuallererst, ob schon Kommentare vorhanden sind und nicht, in welcher Kategorie der Beitrag abgespeichert ist. Aus irgendeinem Grund siehst Du das anders und das ist auch o.k.

Muss jetzt auf Arbeit, doch ich werde mich "meiner" entries.tpl wohl definitv noch annehmen müssen. :wave:

Ian Styx am |

Zur Erklärung: Das die Kategorien im Footer an erster Stelle kommen liegt daran, dass in der Wertigkeit Kategorien globaler sind (denn sie fassen ja Themen-Gebiete zusammen) als Kommentare eines einzelnen Eintrags es jeh sind, du verstehst?!
Es geht ja darum die Besucher zu lenken, auch in der Abstufung der Wichtigkeit einer Information, nicht so sehr darum, was diese eventuell lieber hätten, denn das kannst du sowieso nie und nimmer für alle zufriedenstellend lösen.
Wenn du dann jetzt trotzdem innerhalb des footer die Reihenfolge änderst, müsstest du das auch für die hier besprochenen Footer-Abfrage des Eintrags machen. Vielleicht löst das dein Problem dann schon.

Beat am |

Danke für die Erklärung! :th_up:

Die Wertigkeit ist also:
1. Kategorien
2. Kommentare
3. Stichworte

O.K.

Mich beschleicht immer ein schlechtes Gewissen, wenn ich Dir Arbeit für Nichts mache. Ursache für einige Missverständnisse ist halt, dass wir mit ganz verschiedenem Hintergrund die Sache betrachten. Ich bin ein Laie/Bastler und habe von Programmierung keinen blassen Schimmer. Trotzdem murkse ich in Files herum, so dass einem Profi wohl alle Haare zu Berge stehen. :shame: Zu Deinem Selbstschutz musst Du Dich jeweils fragen, ob die von mir aufgebrachten Punkte überhaupt eine Überlegung (und damit verbundenem Zeitaufwand) wert sind. Ich kann auch mit Ablehnung und einem kurzen "Das ist kein Styx-Problem" umgehen. ;-)

Ian Styx am |

Mit Wertigkeit meine ich soetwas wie eine *strukturelle Logik*, dem das ganze System folgt, zum Beispiel (vereinfacht):

Blog -> Kategorien -> Einträge -> Kommentare (und Track/Pingbacks) -> AddOns durch Plugins, zB Freetags.

Diese Struktur bildet (auch) den Aufbau eines Templates, da PHP (und damit auch Smarty) eben das zuerst abarbeitet was ihm zuerst angeboten wird. Geschieht dies in einer Zeile, kann man die Abarbeitung sogar noch unterschiedlich präzisieren, in den man Klammern für die conditions verwendet.

Du hast hier also unsere Generalabfrage für den Footer allgemein, die nach der Existenz von categories, comments oder trackbacks fragt, damit gibt sie den footer frei. Dort hatten wir für deinen Fall die sticky Geschichte eingebaut.

Die Reihenfolge der strukturellen Logik ist also:

  • 1. Kategorien,
  • 2. Kommentarartiges,
  • 3. Plugins.

Innerhalb des Footers wird nun darauf reagiert.

Zu deinem entries template:

Ich habe es wohl scheinbar nicht geschnallt bis hierhin. Du willst also (nun doch) immer alles anzeigen, wenn ich das jetzt richtig verstehe?!?

Dann könntest du doch die condition sowieso ganz wegnehmen und im footer (intern) auf eventuell ausgegebene "0 Comments" reagieren, in dem du soetwas wie

 {if $entry.comments > 0}{$entry.comments} {$entry.label_comments}{else}Nothing in my backyard{/if}

schreibst (oder was auch immer du für den 0 part willst).

Wenn nur 0 erscheint, scheint das label wohl nicht belegt zu sein, weil sie ja normalerweise dann auch nicht gezeigt würden, für deinen gewünschten Fall aber könnte also ein fallback

{$entry.label_comments|default:'Kommentare'}

helfen.

Nur noch so als Anmerkung: Dem post_comments li und ebenso dem add_footer li fehlt beiden ein schließendes /li markup tag.

Beat am |

Ja, betreffend der dauerhaften Einträge (sticky) haben wir uns falsch verstanden. Meiner Meinung nach sollen Bolg-Beiträge immer eine Fusszeile zeigen. Auch wenn sticky oder wenn kein Kommentar, keine Kategorie und kein Stichwort vorhanden ist. Wobei in meinem Fall immer eine Kategorie vorausgefüllt wird.

Was die entries.tpl anbelangt: So wie es jetzt ist, funktioniert es. Wie gesagt: Im Live-Blog gibt es genau 2 Beiträge (diejenigen unter Recht(s)), bei denen ich keine Kommentare zulasse. Und da stört mich das blanke "0" nicht wirklich. Im Gegenteil: nach der mühseligen Aktion hier weiss ich nun auf einen Blick, dass "0" eben heisst, dass keine Kommentare zugelassen sind. ;-)

Vielleicht setze ich mich bei einem Glas Single Malt nochmals hin und versuche Deine Vorschläge umzusetzen. Für den Moment bin dieses Footer-Thema etwas leid geworden :-( .

Ian Styx am |

Kann ich verstehen... ;-)

    <footer class="serendipity_entryFooter post_info">
        <ul class="plainList">
{if $entry.has_comments OR $entry.has_trackbacks OR NOT empty($entry.has_disqus)}
            <li class="post_comments">
        {if isset($entry.has_disqus) AND $entry.has_disqus}
                {$entry.comments}{if $entry.has_trackbacks}, <a href="{$entry.link}#trackbacks">{$entry.trackbacks} {$entry.label_trackbacks}</a>{/if}
        {else if empty($is_single_entry)}
            {if $use_popups}
                <a href="{$entry.link_popup_comments}" "window.open(this.href, 'comments', 'width=480,height=480,scrollbars=yes'); return false;" title="{$entry.comments} {$entry.label_comments}">{$entry.comments} {$entry.label_comments}</a>, <a href="{$entry.link_popup_trackbacks}" "window.open(this.href, 'comments', 'width=480,height=480,scrollbars=yes'); return false;" title="{$entry.trackbacks} {$entry.label_trackbacks}">{$entry.trackbacks} {$entry.label_trackbacks}</a>
            {else}
                <a href="{$entry.link}{if $entry.has_trackbacks AND $entry.trackbacks > 0}#trackbacks{else}#comments{/if}" title="{$entry.comments} {$entry.label_comments}{if $entry.has_trackbacks}, {$entry.trackbacks} {$entry.label_trackbacks}{/if}">{$entry.comments} {$entry.label_comments}</a>
            {/if}
        {else if isset($entry.label_comments) OR isset($entry.label_trackbacks)}
                <a href="{$entry.link}{if $entry.has_trackbacks AND $entry.trackbacks > 0}#trackbacks{else}#comments{/if}" title="{$entry.comments} {$entry.label_comments}{if $entry.has_trackbacks}, {$entry.trackbacks} {$entry.label_trackbacks}{/if}">{$entry.comments} {$entry.label_comments}</a>
        {/if}
            </li>
{else}
            <li>{$entry.comments} {$entry.label_comments|default:'Kommentare'}</li>
{/if}

            <li class="post_category"><span>{$CONST.CATEGORIES}: </span>{if NOT empty($entry.categories)}{foreach $entry.categories AS $entry_category}<a class="post_category" href="{$entry_category.category_link}">{$entry_category.category_name|escape}</a>{if NOT $entry_category@last}, {/if}{/foreach}{/if}</li>
            <li>{$entry.add_footer|default:''}</li>
        </ul>
    </footer>

 

Beat Menzi am |

:applaus: So ist es natürlich perfekt! :th_up: Danke! :wave:

Ian Styx am |

Ja, betreffend der dauerhaften Einträge (sticky) haben wir uns falsch verstanden. Meiner Meinung nach sollen Bolg-Beiträge immer eine Fusszeile zeigen. Auch wenn sticky oder wenn kein Kommentar, keine Kategorie und kein Stichwort vorhanden ist. Wobei in meinem Fall immer eine Kategorie vorausgefüllt wird.

{if (NOT empty($entry.categories) AND NOT $dategroup.is_sticky) OR $entry.has_comments OR $entry.has_trackbacks}
.... footer Teil ....
{if} 

zu

{if (NOT empty($entry.categories) AND NOT $dategroup.is_sticky) OR $entry.has_comments OR $entry.has_trackbacks}
.... footer Teil ....
{else}
<hr /> oder eigenen footer mit eigener Befüllung
{if} 

 

Beat am |

...und führe mich nicht in Versuchung! ;-)

NEIN! Ich ändere jetzt rein gar nichts mehr an meinem Footer! Sieht doch perfekt aus. Habe auch schon ein Backup der entries.tpl abgelegt. Thema erledigt!

Ian Styx am |

Du könntest sogar überlegen das smarty entrypaging doppelt einzubauen.So wie jetzt und zusätzlich nochmal vor "Kommentar schreiben". Vielleicht sogar nur dann zusätzlich aktiviert, wenn die comments eine gewisse Anzahl überschreiten.

Beat am |

Eigentlich gefällt es mir aktuell sehr gut. Bin heute den ganzen Tag nur per Mobile unterwegs und stelle gerade fest, dass das Feld (respektive der Inhalt darin) für vorheriger/nächster leider nicht umbricht.

Ian Styx am |

/* mobile plus */
#serendipity_smarty_entrypaging {
    background-color: #eaeaf4;
    border: 1px solid #eaeaf4;
    border-radius: 4px;
    box-shadow: 1px 1px 2px rgba(111, 111, 111, 0.5);
    display: -webkit-inline-box;
    margin: 0;
    padding: .5em;
    width: 100%;
}
.smarty_pagination_left {
    margin-right: auto;
    max-width: 48%;
}
.smarty_pagination_right {
    margin-left: auto;
    max-width: 48%;
}

Ersetze mit diesem. So können sich die beiden links das gegenseitig aushandeln. Müsste passen.

Beat Menzi am |

:applaus: :applaus: :applaus:
Siehe Beitrag /2593-entrypaging-Plugin-responsible.html

Beat am |

Die Idee ist gut. Da bei mir generell wenig Kommentare anfallen, würde ich das aber eher umdrehen.
Immer oberhalb "Kommentar schreiben" (weil die Kommentare ja doch noch zum Beitrag gehören), ausser wenn > 6 Kommentare, dann direkt nach der entry-Fusszeile (so wie jetzt). Also eher entweder/oder und nicht zusätzlich. Ich lass das mal etwas gären...

Hmmm... In meinem Live-Blog haben > 95% aller Beiträge weniger als 6 Kommentare erhalten... So gesehen, kann ich das Plugin auch gleich immer oberhalb "Kommentar schreiben" anzeigen. Dazu müsste ich den bestehenden Code ja nur an die entsprechende Stelle, vor das Formular, schieben...

Hier, mit den vielen Kommentaren, sieht es etwas anders aus... muss wirklich noch etwas darüber nachdenken...

Ian Styx am |

IMHO
Also als user hätte man es bestimmt gerne, dass ein entrypaging Vorkommen immer am gleichen Platz ist und nicht plötzlich verschwindet.
Nur ein mögliches zweites könnte man davon abhängig machen ob es durch Überlänge des vorhergehenden Blocks nötig ist oder nicht.

Beat am |

Nach 1x drüber schlafen denke ich, dass ich entrypaging immer zwischen dem letzten Kommentar und "Kommentar schreiben" einfügen werde. So stimmt dann auch die user-experience, die Du angesprochen hast. 2x anzeigen ist in meinem konkreten Fall wirklich nicht nötig.

Beat am |

Gemacht. :th_up:

Beat am |

Mist. Das klappt in dem Fall nicht, wenn man auf einen Beitrag trifft, bei dem Kommentare nicht zugelassen sind. Dadurch wird dort entrypaging nicht angezeigt (wohl weil es sich jetzt im comments-bereich befindet).