TYPO3 v9.5 no URL Segment [slug] field visible in Page Edit - typo3

After upgrading from Typo3v9 to v9.5, I still do not see the URL Segment [slug] field .
The field has been added to the "pages" table under the column/field "slug" and also been populated, but the field is not visible in the BE and the links not updated.
Is there documentation/configuration I am missing?

You need to add a Site Configuration for your page tree in the new Sites module of the TYPO3 backend.
Only then the new slug field becomes visible in backend forms and the URL segments get used in the frontend instead of the old default index.php?id=1 links.

Related

When copying a page the slug field is not updated properly

When I copy a page in TYPO3 10.4.9 and insert it as a subpage of a different page in the same site the slug is not updated properly. It stays the same with a suffix "-1". I would expect the slug to be regenerated based on the new rootline. Anybody who can confirm this behaviour? I would have thought that this bug is already be fixed: Copying a page copies the slug without making it unique?
Example: Page mypage with slug /somepage/mypage is copied and inserted as subpage of page otherpage. The slug of the copied page is set to /somepage/mypage-1. Expected slug value would be /otherpage/mypage.
Use extension sluggi in version >= 2.0.0. to change the default behaviour of TYPO3 10. With this extension installed slugs of pages are updated on copy according to the new rootline.
(There is a bug report addressing the default behaviour of TYPO3 10: Slugs are not maintained reasonable when copying pages/pagetrees)
The described behaviour is correct. URLs are not updated automatically, as it may be desirable to continue using the old URL.
The addition of a number, however, is automatic and is necessary because the URL '/somepage/mypage' now exists twice.

Why do I get an 404 Error after using TYPO3 V9.5

I am using TYPO3 9.5 and I created a root page with several subpages.
Before I created a site configuration the subpages were available as
/index.php?id=19
after the site configuration the url has changed to
/events
which is absolutely fine but my subpage cannot be found anymore. I get an 404 Error.
The subpage is still available under the old url but the new one doesn't work.
What can I do to fix this?
after changing the slug(path/path segment) for a page you need to update the slugs for all subpages manually.
The slug is generated automatically when the page is created. Probably your slugs were generated wrong before you build your site configuration.
Try to autogenerate all the slugs with the adapted wizard. You must do it by hand for each page as there is no wizard for page subtrees (yet). you might do the multi-edit in the list module for the slug field.
I have similar issue and no clue how to solve. See TYPO3 9.5 URL Routing with URL Segment is not working
Manual slug override, saving, chache clearance etc. does not help.
Are you using as well Apache? Maybe the issue is related to the webserver.

Get the timestamp of last modification of TYPO3 page, difference between tstamp and SYS_LASTCHANGED

What is the right way to get the date of last modification of a TYPO3 page (and its *tt_content*) ?
There are 2 fields in properties of table pages : tstamp and SYS_LASTCHANGED.
In this article SYS_LASTCHANGED are recommended. But what is the role of tstamp in this case ?
Which one should we use ?
tstamp is modification time of the page record itself. SYS_LASTCHANGED is the modification time of the page OR its content. It's updated once the page is rendered in the frontend, not right after the change in the backend. However, thanks to this it also includes changes of content records residing on a different page and inserted into the given page using "Insert Records" content elements.
Note: Tested in TYPO3 4.5 LTS and might not work in later versions.
tstamp is the date and time of the last change of the data stored in the pages table. It gets updated only when the page properties are changed, not the content of the page.
SYS_LASTCHANGED is often called as the real last update of the page including its contents but that seems not to be true at all and is not trustworthy. I can't tell what exactly triggers it's change but it seems to be related to the pages rendering. Even more strange is that it could be 0 on already rendered pages. My advice is to never rely on SYS_LASTCHANGED.
Our way to get the last change of a page displayed is currently as follows:
We added <time date-current="{data.tstamp}"><time> to our custom Contents/Partials/Header/All.html (you need to overwrite the fluid-styled-content-elements) and to our page template. Then a java script does the job to find out the latest change and inserts the html to the page, displaying the last change.
The field SYS_LASTCHANGED is only updated in the frontend once the page has been rendered.
Check lastmod in sitemap
Edit content element on page
Call page in frontend
Check sitemap again

TYPO3 tt_news : No code given

I just inherited this TYPO3 project and have a bunch of tasks to perform with it (adding this here, and that there, etc.) and I'm at the task "Add news to the front page" and "Add a RSS feed to the site"
Well, the tt_news extension is installed and I have created 1 test news. Now I added a page content plugin of type "News" and configured it from the best of my knowledge, following the outdated manual provided with the extension, saved the page, cleared the cache and refreshed the frontend page to see this :
...What does it mean and how do I make the extension work?
Edit the content element containing tt_news extension and at the Plugin tab in select field What to display choose default view ie: Standard list view (LIST)
Also:
make sure that in Content Element's settings you choose correct
folder with tt_news records in field Other settings > Page(s)
with tt_news records
tt_news records are created by default with Hidden flag set to true, make sure that the checkbox is unchecked. (BTW this behaviour can be changed with TCAdefaults.tt_news.hidden=0 in PageTS or UserTS)

refinerycms 2.0.3, how adding a field only to the home page

In Refinery 2.0.3, i would like add a field (text) only to the home page.
I find it Custom fields in Refinery CMS, but if i understand, the field is applied on all pages.
Someone have an idea ?
Thank you
in your /config/initializers/refinery/pages.rb
uncomment # config.new_page_parts = false
into config.new_page_parts = true.
Restart your server, and then you can see in the back-end page editor you are now able to add new content field as many as you want in addition to the existing body/sidebody tab field. So in your home.html.erb you can call in the newly created field with <%= #page.content_for(:newpart) %>
Hope this helps.