Upgrading from Pulse 3 To Pulse 5 On Non Template Site

I have an HTML Bootstrap site that I integrated Pulse 3 into in order to have a working blog page. I’ve now been able to purchase Pulse 5 and can’t figure out which files I need in order to make the upgrade. With Pulse 3 I just needed the “pulsepro” folder which had all the Pulse files, in my sites root, as well as the config.php file, then added a rewrite rule in my htaccess to tell Pulse 3 to use the blog.php page in my public_html root. I’m hoping that same rewrite rule will work with Pulse 5.

I then added the path to the Pulse 3 files using PHP include. I did this for the blog posts on my blog.php page, the blog sidebar and recent posts I created in blocks that is also on my blog.php page, and for a footer file that I have on every page of my site so that when I post a new blog post I only have to change the recent posts section in the footer in one file instead of multiple.

The thing is, there doesn’t appear to be one folder that I can include in my sites root that will run everything with Pulse 5 as it does with Pulse 3. Besides the config.php file there are a lot of other files, and now there is a “content” folder and the “pulsecore” folder, rather than a “data” folder inside the “pulsepro” folder. So I’m not sure how to get this up a working. Any help would be greatly appreciated.

1 Like

Thanks @RHKay and great to have you here and using 5 :slight_smile:

We’re working on making tutorials more readily available so that will help.

But firstly, backup your site, take a copy and work with that firstly just in case.

Here’s how to install Pulse5:
https://help.pulsecms.com/article/7-it-takes-45-seconds-to-install-pulse

You can also download the manual here:
https://help.pulsecms.com/article/34-pulse-manual

But if you are mainly using this for the blog it shouldn’t be too much conversion work.

The only files you need to worry about touching in the folder structure are “template” and “content”. The rest you can leave alone as they are the core files :slight_smile:

No need to touch the config.php either, the /admin/install.php takes care of everything as in the install video.

Once installed you can add your site to the Template > layout.php to bring your whole site into Pulse (so no more includes needed). Or you can use the PHP embeds under the Blocks/Pages inside the Pulse admin and bring that content into your site.

Have a look at this video on how to convert an HTML site into a Pulse template:
https://help.pulsecms.com/article/17-template

It won’t take long :slight_smile:
Keep us all up to date with how it goes

It seems pretty straight forward to bring an HTML site into Pulse, if I wanted to convert my entire site to Pulse, but, that isn’t what I want to do. While integrating the meta data from my actual site might be a good idea, I don’t want to integrate the content of my site files into Pulse. I just want to display blog posts on my blog.php page, and use a Pulse footer, which I’m assuming would be done by embedding blocks.

What I can’t figure out is getting my site files, and including my htaccess to work with Pulse. My site files are not .html files, they are .php files because I’ve written my own code for contact forms on pages with contact forms, and in order to integrate the blocks for Pulse 3 to have a Pulse footer my site files had to be .php files.

So, if I’m understanding correctly I add my site files to the “template” folder. Normally if I wanted to turn my site into a full Pulse site I would turn my index.php into the layout.php file, but I don’t want my entire site to be a Pulse site. I want to keep my custom htaccess working the way it does, and I want to use the contact forms I’ve already built. I just want a Pulse blog and a footer for every page. If I need to convert my header in order to use the OGP tag for social media image sharing, then I can convert that as well. But do I still need to change my index.php file into the layout.php file to get this to work? Even though I do not want the content on any of my pages to be a part of Pulse? I just want to display blog posts and set up a working sidebar for my blog.php page that is setup in Pulse. As well as embed a Pulse footer, and if I need to do the same for my header to use the OGP tags for social media sharing.

I also need the content I’ve setup in my htaccess to still work, such as removing file extensions from my URLs, for example. I’m guessing if my site files do still go into the “template” folder, then I would also add my sites htaccess to the same folder. If so, what do I need to add to my htaccess for Pulse to work? I can remove the old rewrite rules for Pulse 3, I just don’t want to lose my custom rewrite rules for other things related to my entire site.

I apologize for asking multiple questions, but hopefully I’m making sense for everything I want to do. I just need some steering in the right direction to get going.

1 Like

Oh I see - this is an interesting setup!

So you are adding Pulse to your existing PHP site to add power to a Blog and some Footer parts?

And you want it to look seamless in that all pages have the same design/css?

You could merge the htaccess files but that might break things. This is similar to how the RapidWeaver integration is made. You could install Pulse in a sub folder say “pulse” and then use custom rewrites to pull the blog and footer into your php pages in the root directory. And visit /pulse/admin/ to log in.

But yes usually the template folder will store the template files for Pulse and your usual site files go in the root.

I think once this has been achieved it will be a great case study as others might be trying to do the same or have done before?

Yes, that is exactly what I’m looking to do. Its what I did with Pulse 3, so I’m hoping I can achieve the same setup with Pulse 5.

Although I’m not sure how just using rewrite rules will work. With Pulse 3 I used the php include to bring in the blog.php page from the pulsepro includes folder, which had the php code needed to bring in the blog posts from Pulse where ever I wanted on my sites blog.php page. So I put the php include code where I wanted my blog posts to display and the blog posts were pulled in. From what I’m seeing with Pulse 5 the setup is so much different that there isn’t anything I can see to pull in with php includes into my sites blog.php file so that the Pulse 5 blog posts show up on my sites blog.php page as if they are meant to be there.

1 Like

Okay, I’ve been figuring some work around to get this to work. I have the Pulse files in a sub folder for testing on my server, and my site files in the same folder, since I don’t want to add my entire site to Pulse. I added my home page, which was index.php, to the template folder in Pulse. I had to do this because Pulse has an index.php so I couldn’t keep my home page with the Pulse index.php. It seemed to work, I kept the content of my home page as it was in the file, and just added the Pulse tags for the title, description, and created blocks for my footer which I included in the template file. Now I’m trying to get my blog to work.

I decided to make another template for my blog, which should make it easiest for getting my blog to function with Pulse. I created another folder in the Pulse template folder, just called it myblog, and inside that folder I have another layout.php file for the blog template. The trouble I’m having is when I log into the Pulse dashboard and go to Pages, and Blog, I try to select the page template to be the template inside the “myblog” folder instead of the default. But after selecting “myblog” and saving the page it reverts back to reading the default template. How do I get it to save and read the template I want it to so I can test to see if this will work? I’m using Pulse version 5.0.3.

1 Like

Great progress @RHKay :slight_smile:

There was a bug with the alternate template which was fixed in one of the 5.1BETAs - please try the latest. 5.1 is being released today or tomorrow so that will fix it.

Alternatively, you could add this to your blog page:
{{template:alternate}}

The bug was with the selector from inside the Admin UI but not the actual function. But that has since been fixed than 5.0.3!

I upgraded to Pulse 5.1, and left alone the “template”, “content” and “/pulsecore/storage/” folders. I’m hoping that was correct. I still could not change the template in the meta on the blog page in the Pulse dashboard, so I added your suggestion {{template:alternate}}, using the name of my folder, and added that to the blog page under “Pages” in the Pulse dashboard.

The template I made for my blog is being read, but I can not get any blog posts to display at all. Nor can I get a block for use in the sidebar to show up either.

Maybe I missed something. This is what I’ve done so far.

In the layout.php file in the folder for my blog template I removed all the previous HTML content for my blog in the “body” tag, except for my container and row class. Inside the row class I added <?php echo $parsedown->text($content); ?>, which is where I want the content for my blog page to appear.

Then, in the Pulse dashboard, on the blog page in “Pages”, I have this:

<!-- Blog Entries Column -->
<div id="blog-pg" class="col-md-8">

<!-- Blog Posts -->
{{template:myblog}} {{search}}{{blog-tags:"blog"}}  {{social}}       
{{blog:"":"[[featured-image]] [[blog-content-loop(<<blog-item-author>> <<blog-item-date>> <<blog-item- 
featured-image>> <<blog-item-content>> <<blog-item-tag>>)]]"}}

</div>

<!-- Blog Sidebar Widgets Column -->
<div class="blog col-md-4">
    <div class="well">
         {{block:blog/blog_sidebar}}
    </div>
</div>

But neither the blog posts nor the sidebar block show up. Am I missing something else?

1 Like

Looks good!

The line in the template is now:
<?php echo (isset($parsedown) ? $parsedown->text($content) : $content); ?>

You can see an example in the layout.php of the example template.

But the rest looks right and should work. Have you also included the htaccess file?

If it still doesn’t appear, can you zip and send it to me via a dropbox link or something - “message” on this forum is fine.

And will take a look :slight_smile:
I think it’s almost there!

Thank you for getting back to me so quickly. I added the new line in the template, I was still following the manual, so I didn’t even think to look in the layout.php example in the new files.

I did add the htaccess, I was also successful in combining both the Pulse htaccess and my custom htaccess rules in the main htaccess, which is in the root of the subfolder I’m testing in on my server.

The blog posts now show up, I just have to do some styling tweaks to get them to display similar to how they display on my current setup with Pulse 3 on my live site. Hopefully I’ll now be able to get this completed so I can upgrade Pulse on my live site soon.

One other thing I’ve noticed is the pagination is just numbers, I don’t want that. I just want the pagination to show “< Older Posts” as one button, and “Newer Posts >” as another button. See this page for the pagination at the bottom of the page https://rachelhkay.com/blog. How can I achieve this?

1 Like

Sounds great @RHKay - we’ll have to do a write up of this as a tutorial for the new Tutorials page we are preparing :slight_smile:

You can style the blog by adding overwrites in your CSS to the pulsecore/style.css - best to add it in your template CSS files as Pulse updates are safe that way.

For the pagination… you can hide it completely by allowing all posts for the page. But we upgraded to that as it was often requested from Pulse4 users :sweat_smile: A lot of people had large blogs and wanted a quicker way to browse through posts.

That said, we can see if it’s possible to include both and a toggle option in the settings?

1 Like

Yes, a tutorial about the migration would be great! This whole post is already very helpfull, thanks @RHKay and Michael!

3 Likes

I’ve pretty much got the styling completed. One thing I like about Pulse 5 is that now I can add categories in my sidebar. The only thing I don’t like is that for the recent posts, which I’ve added in my sidebar as well, there isn’t a date, just the title of the post. In Pulse 3 the recent posts showed the title of the post and the date it was posted. See this link to my current blog with Pulse 3 https://rachelhkay.com/blog, recent posts is in my sidebar. Also, is there a way to add a “See More” link at the end, as I did with Pulse 3?

If I keep the tags in my blog posts, which I’ve left at the end of my blog post content, is there a way to customize them, such as add some text before them. For example, if I have a blog post with the tag “web development”, right now it just says that, I can’t find a way to add something like “Posted in” before “web development”.

Oh, and one other thing. Since I turned my sites index.php file into a Pulse 5 template, to display my home page the same way without having to fully template it out into Pulse, I can’t get the title of that page to change from the demo. My favicon shows up, but next to my favicon it still says “Acme Inc. Home” instead of “Rachel H Kay Web Designer & Developer”. How do I change that?

Other than that, I’m just about ready to push this to my live site. Hoping once I get to that point everything goes well. I think I’m going to temporarily redirect my site to a maintenance page while making the upgrade. Luckily, I’ll be able to see the changes but everyone else will just see the maintenance page.

1 Like

Great - glad you like the categories!

If I keep the tags in my blog posts, which I've left at the end of my blog post content, is there a way to customize them, such as add some text before them. For example, if I have a blog post with the tag "web development", right now it just says that, I can't find a way to add something like "Posted in" before "web development".

This is possible but you'll need to add this to the Pulsecore files - it's not something we've made flexible at the moment I'm afraid, but it's a good idea for a future update.

Oh, and one other thing. Since I turned my sites index.php file into a Pulse 5 template, to display my home page the same way without having to fully template it out into Pulse, I can't get the title of that page to change from the demo. My favicon shows up, but next to my favicon it still says "Acme Inc. Home" instead of "Rachel H Kay Web Designer & Developer". How do I change that?

This is the site title tag in your META data - so you can either change it in the page META drawer or in the template:

If this is in layout.php (your index.php perhaps) <title><?php echo $page_title; ?></title> then you can change the title here:

Can't wait to see this live - will add it to the showcase :slight_smile:

And please let us know. Also, just take a backup (of course I'm sure you will!) before moving live just in case you need to switch back temporarily :slight_smile:

Thank you for your help. I just have one little issue. I downloaded the starter plugins pack you linked to and added the recent posts plugin so I can see how it looks, but it isn’t working.

I uploaded the “sb_recent.txt” file into content/blocks/blog, which is a folder in the blocks folder I created to put all blocks related to the blog into. The blog url is correct in the config, yet when I embed the recent posts block in my blog page in Pulse admin, all that shows up in my sidebar is broken code. Any ideas why this is happening?

Oh, and how can I put the back button on the blog posts below the content?

One last thing, if I use the Pulse navigation in order to be able to add the two Pulse page links for my home page and blog, the HTML and CSS are completely different from my sites HTML and CSS for my navigation. I just can’t use it. What are my other options to keep from breaking the style of my current navigation, but still be able to link to my Pulse home page and blog page, as well as my other non templated pages.

I did figure out a solution for the two templated pages, my home page and blog page, adding <?php echo $path; ?> to the links in the navigation in the layout.php files for those two pages. Is there a solution to now link my non templated pages to the Pulse home and blog pages?

1 Like

I uploaded the "sb_recent.txt" file into content/blocks/blog, which is a folder in the blocks folder I created to put all blocks related to the blog into. The blog url is correct in the config, yet when I embed the recent posts block in my blog page in Pulse admin, all that shows up in my sidebar is broken code. Any ideas why this is happening?

Not sure - could you send a link or screenshot (DM message is fine) so can see the error. It maybe that you could just embed the PHP code directly in your case. And we're going to make this update in the future so you could wait for that also. But send in the link and can check what is going on...

This is coming in a later update:

One last thing, if I use the Pulse navigation in order to be able to add the two Pulse page links for my home page and blog, the HTML and CSS are completely different from my sites HTML and CSS for my navigation. I just can't use it. What are my other options to keep from breaking the style of my current navigation, but still be able to link to my Pulse home page and blog page, as well as my other non templated pages.

You could add the same styles for the HTML elements, so double up so they both have the same and will look the same? So copy and paste the CSS so it's the same?

I did figure out a solution for the two templated pages, my home page and blog page, adding <?php echo $path; ?> to the links in the navigation in the layout.php files for those two pages. Is there a solution to now link my non templated pages to the Pulse home and blog pages?

The Pulse Navigation you can link non-templated pages like this:

For linking the other way, it's just a standard link or absolute link.

1 Like

I’ve updated Pulse on my live site, and have the blog working. There are just a couple of issues I’m now running into.

The first issue is with the tags. Since they are supposed to be the categories for the blog, if I click on one of the tags the page it goes to, which is supposed to list all posts with that tag, the page doesn’t load correctly, and just keeps loading. See this link: https://rachelhkay.com/tagged/gardening

The second issue I’m having is getting the Disqus comments to work. Since Pulse isn’t listed in the CMS options I chose to install with universal code. I don’t know where I’m supposed to the code, such as the code for where I want Disqus to load. It doesn’t work if I put it in the layout.php file for my blog, and if I create a block, well, since the comments should display below each blog post I can’t see where that block would go. Am I missing something to get this set up?

1 Like

Site looking good :slight_smile:

Disqus - you can add your Disqus username in Pulse > Admin > Settings
There’s no need to embed the Disqus code in the site :slight_smile:

Tags - This is strange! It doesn’t happen in Pulse sites installed in the usual way so there might need to be adjustment made for your setup. I see the errors on the page. Do you also see anything in the logs? Can you private message to me the ZIP via a dropbox link or something (admin > settings > extend > download log)

Thanks

My Disqus username is already in the settings in admin, but there is no comment form below the posts. It just says “Comments powered by Disqus” at the bottom of my posts. If that’s how its supposed to display, I’d rather have an actual comment form.

As for the tags, I can’t access that part of the admin settings. For some strange reason the settings section in admin is not displaying properly, as if it can’t connect to its stylesheet, but yesterday everything was working fine. The dashboard displays and functions properly, and the options on the dashboard navigation, but the settings just won’t display as it should, so I can’t select the “extend” section in settings. Any ideas on what went wrong over night?

Oh and the settings in the admin in the sub folder I was testing in before moving to my live site, it still displays properly. The config file for my live site is setup correctly, is there anything else anywhere that may be trying to find the test URL instead of my live site URL for displaying the settings? I did install Pulse on my live site, and copied the “template” and “content” folders from the test sub folder. As well as the file in the pulsecore files that I customized so “Posted in” would display before the tag name at the end of my posts.

Also, I’m using AddThis in order to display suggested posts and/or pages at the end of my blog posts, but the featured images on my blog posts aren’t displaying with this. It works for the page, which has custom social tags in the header, but since my blog is setup with Pulse I was wondering if there was something I might have missed so that the featured images would be found.

See the bottom of this post for an example:
https://rachelhkay.com/blog-23-the-need-for-php-7-compatibility-with-wordpress

This is what I have at the top of my blog.txt file in the admin:

<!-- Blog Posts --> {{template:myblog}} {{blog:"":" [[blog-content-loop( <<blog-item-date>> <<blog-item-featured-image>> <<blog-item-content>> <<blog-item-tag>>)]]"}}

Am I missing something? I’m beginning to wonder since Facebook also isn’t pulling in the featured image of each blog post, but Twitter and Google+ are.