Page Title (browser title) in CM1 for SEO

Please see screenshot attach. Is there a backend in Rhythmyx (like a list of URL, page title, browser title, etc. like spreadsheet) that allows me to update each page instead of me going to page by page by clicking edit then click metadata dropdown, then save then save, etc. which is super time consuming.

I am trying to improve SEO for SiteImprove. Thank you!

Hi Aaron,

What are you updating the Title to? Is it “Existing Title” to “Existing Title Sante Fe College Foundation” or something like that? Also is this for all pages on the same site or is it a section?

-n

List of page title and page title (for seo). Example:

/about/index - Page Title: About SF, SEO Title: About Santa Fe College
/ccs/index - Page Title: CCS, SEO Title: CCS

Etc.

I’m not sure if I understand the pattern there. If you want to do a batch update I think you would need some type of consistent rule.

If you have some experience with SQL you can use your favorite query editor on the backend database or the SQL Tool. Note that you need to be an Admin in order to access this url:

/Rhythmyx/test/sql.jsp

The Browser Title is stored in the CT_PAGE table in the PAGE_TITLE column.

This query for example will pull the current Browser Title and File Name for each page.

SELECT CT_PAGE.CONTENTID, REVISIONID, PAGE_TITLE, CS.TITLE FROM CT_PAGE INNER JOIN CONTENTSTATUS CS ON CS.CONTENTID=CT_PAGE.CONTENTID AND CS.TIPREVISION=REVISIONID GROUP BY CT_PAGE.CONTENTID, CT_PAGE.REVISIONID, CT_PAGE.PAGE_TITLE, CS.TITLE HAVING REVISIONID=MAX(REVISIONID) ORDER BY CT_PAGE.CONTENTID

If we wanted to find all pages that have filename and title the same (regardless of file extension):

SELECT CT_PAGE.CONTENTID, REVISIONID, PAGE_TITLE, CS.TITLE FROM CT_PAGE INNER JOIN CONTENTSTATUS CS ON CS.CONTENTID=CT_PAGE.CONTENTID AND CS.TIPREVISION=REVISIONID WHERE (CT_PAGE.PAGE_TITLE=CS.TITLE) OR (CONCAT(CT_PAGE.PAGE_TITLE,".html") = CS.TITLE) GROUP BY CT_PAGE.CONTENTID, CT_PAGE.REVISIONID, CT_PAGE.PAGE_TITLE, CS.TITLE HAVING REVISIONID=MAX(REVISIONID) ORDER BY CT_PAGE.CONTENTID

At the simplest you could just manually update them in table mode - with a table editor using a native SQL Tool like Microsoft SQL Server Management tool or MySQL Workbench.

Or you could use an update statement to update the table:

UPDATE CT_PAGE SET PAGE_TITLE=‘New Title’ WHERE CONTENTID=? AND REVISIONID=?

More sophisticated approach would be to run one of the selects above into a temp table, update the rows in that table, then update the CT_PAGE table from that via a join. If you aren’t sure on SQL a DBA should be able to help, or just use the table editor approach.

Hope this helps,

-n

1 Like

This does help a lot! The first one is what I was looking for, sort of.

I am trying to add ‘RESOURCE_LINK_TITLE’ (found that reference under Actions > Edit Meta-Data > Page Summary > “Display title (link text)” and I can run comparison of ‘RESOURCE_LINK_TITLE’ and ‘PAGE_TITLE’.

It didn’t work and threw in error. This is what I was talking about - see red arrows:

Hi Aaron,

What error did you get?

This SQL compares the PAGE_TITLE and RESOURCE_LINK_TITLE:

SELECT CT_PAGE.CONTENTID, REVISIONID, PAGE_TITLE, RESOURCE_LINK_TITLE FROM CT_PAGE INNER JOIN CONTENTSTATUS CS ON CS.CONTENTID=CT_PAGE.CONTENTID AND CS.TIPREVISION=REVISIONID WHERE (CT_PAGE.PAGE_TITLE= CT_PAGE.RESOURCE_LINK_TITLE) GROUP BY CT_PAGE.CONTENTID, CT_PAGE.REVISIONID, CT_PAGE.PAGE_TITLE, CT_PAGE.RESOURCE_LINK_TITLE HAVING REVISIONID=MAX(REVISIONID) ORDER BY CT_PAGE.CONTENTID