Pages in Presence Builder websites turned to external links

Created:

2016-11-16 13:15:46 UTC

Modified:

2017-04-24 11:41:23 UTC

0

Was this article helpful?


Have more questions?

Submit a request

Pages in Presence Builder websites turned to external links

Applicable to:

  • Plesk Sitebuilder 4.5 for Linux
  • Web Presence Builder 12.0 for Linux
  • Plesk 12.0 for Linux

Symptoms

After upgrading Plesk from 11.5 to 12 version some simple pages in Presence Builder websites turned to external links. And there is now way to turn it back.

Cause

Presence Builder database inconsistency. After upgrade the value of site_page_type_id for the issue page changed from 1 to 2. This is a software issue with internal ID PPB-4354 . Thie fix will be included in future product updates.

Resolution

Such feature as "external links" was introduced in Presence Builder 12. It is defined by ' site_page_type_id ' field in the ' site_page ' table of Presence Builder database (" sitebuilder5 "). The ' site_page_type_id ' may have the following values:

0 - main page
1 - simple page
2 - external link

If some pages turned to external links after upgrade, it is needed just to change the corresponding site_page_type_id value for the page.

For example, there is a website "example.com" and the page named "Careers" on the website turned to external link after upgrade. Here are the steps how to fix it.

  1. Take the backup of sitebuilder5 database

    # mysqldump -uadmin -p`cat /etc/psa/.psa.shadow ` sitebuilder5 > sitebuilder5_dump_`date +%F`.sql
    1. Find the id of the main page of the website

      mysql -uadmin -p cat /etc/psa/.psa.shadow sitebuilder5

      mysql> select sps.url as site_url, s.site_page_id as site_page_id from site_publish_settings sps,site s where sps.id=s.site_publish_settings_id and sps.url like '%example.com%';+---------------------+--------------+| site_url | site_page_id |+---------------------+--------------+| http://example.com/ | 581 |+---------------------+--------------+1 row in set (0.00 sec)

  2. Find all the pages related to the website

    mysql> select id,parent_id,title,site_page_type_id from site_page where id=581 or parent_id in (select id from site_page where id=581 or parent_id in (select id from site_page where id=581 or parent_id=581));
    +-----+-----------+--------------------------+-------------------+
    | id | parent_id | title | site_page_type_id |
    +-----+-----------+--------------------------+-------------------+
    | 581 | 0 | | 0 |
    | 582 | 581 | Home | 1 |
    | 583 | 581 | About Us | 1 |
    | 584 | 581 | News and Events | 1 |
    | 585 | 584 | May Sales Report | 1 |
    | 586 | 584 | Partnership Announcement | 1 |
    | 587 | 581 | Products and Services | 1 |
    | 588 | 587 | Product 1 | 1 |
    | 589 | 587 | Product 2 | 1 |
    | 590 | 581 | How to Buy | 1 |
    | 591 | 581 | Careers | 2 |
    | 592 | 581 | Contact Us | 1 |
    +-----+-----------+--------------------------+-------------------+
    12 rows in set (0.00 sec)

    We can see that ' site_page_type_id ' of "Careers" page is 2, that is why it is shown as an external link in Presence Builder editor.

  3. Change site_page_type_id of "Careers" page to 1.

    mysql> update site_page set site_page_type_id=1 where id=591;
    Query OK, 1 row affected (0.00 sec)
    Rows matched: 1 Changed: 1 Warnings: 0

    After that the page will be just a simple page. If there was some content on the page, it will be available again.

Have more questions? Submit a request
Please sign in to leave a comment.