thorsten / phpMyFAQ

phpMyFAQ - Open Source FAQ web application for PHP 8.1+ and MySQL, PostgreSQL and other databases
https://www.phpmyfaq.de
Mozilla Public License 2.0
582 stars 253 forks source link

Per file backend SEO fields for title and meta-description #3014

Closed c1972 closed 1 week ago

c1972 commented 1 week ago

The Problem:

title and meta-description in the HTML header are important for search engine optimization (SEO). When doing a Google search, you decide which search result to click based largely on these two text snippets.

Unfortunately, phpMyFAQ offers no or only insufficient options for specifying these important texts.

I am not the first person to complain or ask about this issue. https://forum.phpmyfaq.de/search.php?keywords=meta+description Several users have been asking about this again and again since 2006.

Details on the current situation:

Homepage Title = entry in Configuration / Main / Title of your FAQ + attachment: "powered with ❤️ and ☕️ by phpMyFAQ 3.2.7" MetaDesc = entry in Configuration / Main / Description

The homepage title is composed of the contents of two fields.

The field Configuration / Main / Title of your FAQ is also used in other contexts as seen below, so can't just be changed.

Example SERP snippet of a phpMyFAQ homepage https://pokerfit.de/ snippet-startseite

Category pages The title and meta description of a category correspond to those of the home page. The category name and category description are displayed on the category page, but are ignored for the SERP snippets. The SERP snippets for category pages therefore contain NOTHING about the content of the specific category. See following snippet.

Example SERP of a phpMyFAQ category page https://pokerfit.de/category/1/poker_begriffe.html It shows the same result as the homepage and as every other category. But NOTHING related to the category contents. No matter was has been set in the Categories backend. snippet-kategorie

Individual FAQ posts Title = entry in Configuration / Main / Title of your FAQ + FAQ title or Question MetaDesc = often completely EMPTY (<meta content=" " name="description" />), sometimes only 3 words or simply inappropriate

Example SERP snippet of a phpMyFAQ single FAQ https://pokerfit.de/content/1/5/de/was-bedeutet-action-beim-pokern.html This FAQ has NO meta description! snippet-faq-action

Example SERP snippet of a phpMyFAQ single FAQ https://pokerfit.de/content/1/1/de/was-bedeutet-3_bet-beim-pokern.html With only 3 Words meta description which do NOT describe the content! snippet-faq-3bet

The first words in a post are rarely suitable for a good meta description. Accordingly, it is not enough to use the post content for the meta description. It needs a separate option to set the meta description for each post individually. See following snippet.

Example SERP snippet of a phpMyFAQ single FAQ https://pokerfit.de/content/3/205/de/reihenfolge-der-poker_h&aumlnde-beim-texas-hold_em.html With inappropriate meta description. snippet-ranking-holdem

For SEO purposes, I use a SERP Snippet Generator https://app.sistrix.com/de/serp-snippet-generator which can be used to check how Google (probably) displays a website in the search results. This is where the screenshots are from.

What I would like:

Fields for title and meta description in the backend for the homepage, categories and every single FAQ post.

Alternatively, at least a way to enter this data in the database tables. As long as the individual areas in the backend have not yet been adapted for this.

Thank you!!!

thorsten commented 1 week ago

Thank you very much! As we're working on 4.0 currently we can add this!

thorsten commented 1 week ago

One short question: The title and the description can be edited since the beginning, do you just want to change the order?

thorsten commented 1 week ago

I found a bug for the category pages which prevents to show the category description for the meta description. I'll fix that for 3.2.8, but enhanced this for 4.0

thorsten commented 1 week ago

Would this be suffucient for FAQs?

Bildschirmfoto 2024-06-23 um 10 57 40
c1972 commented 1 week ago

Perfekt Thorsten! Genau so wie auf dem Screenshot hab ich mir das vorgestellt. Bitte genau so auch für die Kategorien und die Startseite. Super, Danke!! :) (Ich hatte deine Github-Kommentare als E-Mails bekommen und darauf geantwortet, keine Ahnung ob das angekommen ist??)

thorsten commented 1 week ago

@c1972 Für die Kategorien verstehe ich das, für die Homepage gibt es das ja schon.

c1972 commented 1 week ago

Siehe meinen ursprünglichen Beitrag hier, landet da aktuell Werbung für phpMyFAQ. Es sollte 2 separate Felder dafür geben, extra nur für's SEO, so dass sich SEO und die Angaben in Konfig: Titel der FAQ + Beschreibung der Seite nicht ins Gehege kommen können.

thorsten commented 1 week ago

Die "Werbung" ist schon weg, die Description ist auch heute nur für <meta content="..." name="description"> da

c1972 commented 1 week ago

Du könntest die beiden Felder in der Konfiguration (Titel der FAQ + Beschreibung der Seite) auch anders benennen, damit klar wird, dass die sich auf title und meta-desc auswirken. Ich habe nur Bedenken, dass sich das mit anderen Funktionen verharkt. Denn was im Feld "Beschreibung der Seite" steht, landet aktuell in der Meta-Desc von Homepage und allen Kategorie-Seiten. Das würde sich also mit den SEO-Feldern für Kategorien überschneiden. Was im Feld "Titel der FAQ" steht landet aktuell an noch mehr unterschiedlichen Stellen. Ich denke völlig separate Felder extra für SEO machen es dir leichter, sonst wird es später andere Probleme geben, wenn das nicht sauber getrennt ist.

thorsten commented 1 week ago

Okay, ist auch nicht viel mehr Aufwand. Du bekommst deine Felder. ;-)

c1972 commented 1 week ago

Juhu! :) Danke dafür und ich bin sicher, dass nicht nur ich mich drüber freue. Du kannst sicher super programmieren wovon ich kaum Ahnung habe. Aber mit diesen SEO-Geschichten denke ich, hattest Du bislang weniger Kontakt, oder?

thorsten commented 1 week ago

Doch, SEO kenn ich schon, aber bisher reichte es allen Usern, was schon da war oder sie meldeten sich auf Rückfragen nicht mehr.

Bildschirmfoto 2024-06-23 um 13 57 47
c1972 commented 1 week ago

Kommt halt drauf an für welchen Zweck man das System benutzt. Wenn's für interne FAQ-Zwecke gedacht ist, denkt niemand an SEO. Erst wenn man ne Seite macht, die auf gute Google-Rankings angewiesen ist, guckt man sich das genauer an. Aber egal.

Grad sehe ich, dass die GZIP-Komprimierung nicht aktiv ist (https://www.giftofspeed.com/gzip-test/), das sollte mit ein zwei Zeilen in der htaccess zu machen sein. Willst Du dafür nen separaten Eintrag hier bei Github?

c1972 commented 1 week ago

https://blog.hubspot.com/website/gzip-compression Da steht, wie man das aktiviert.

thorsten commented 1 week ago

Sollte eigentlich aktiv sein

c1972 commented 1 week ago

pokerfit-gzip

c1972 commented 1 week ago

hab mir die htaccess nicht angesehn, nur schnell den Check gemacht und krieg das als Ergebnis...

thorsten commented 1 week ago

Eine Kleinigkeit noch. In der Konfiguration gibt's ein Feld "URL zum Datenschutzhinweis" und diese URL taucht dann im Impressum auf, soweit super. Leider gibt's aber keine Möglichkeit, die Datenschutzerklärung auf einer Seite mit gleichem Header und Footer zu speichern. Nicht jeder kommt mit dem bisschen HTML zurecht und kann sich das selbst basteln. Gut wäre eine Möglichkeit custom Seiten anzulegen, die zwar Header und Footer übernehmen, ansonsten aber mit einer leeren Seite starten. Solche Seiten wären dann "Teil des Systems" und der Datenbank und im Backup drin... würden nicht vom Benutzer im root-Verzeichnis gespeichert.

Bitte dafür ein neues Ticket aufmachen, wenn da mehr gewünscht ist. Da 99% der FAQs als Unterseiten bestehender Seiten laufen, war der Link auf eine externe Datenschutzerklärung bisher genug.

thorsten commented 1 week ago

-> wird mit der 4.0.0-alpha.3 veröffentlicht