kongondo

Module: Blog

754 posts in this topic

I need some help. I have read all posts and documentation but can not get it to work. I have two questions.

1. Image summary page
My blog index page works but I would like to have the image on the right side. Can I do this with CSS (img.post-featured-image{float:right})?

<div class='row'>
	<div class='col-md-12'>			
		<?php
			$blog = $modules->get("MarkupBlog");
			$options = array('width'=>280, 'alt'=>'title', 'post_small_image'=>2);
			$content = $blog->renderPosts("limit=10", true, $options);
			echo $content; 
		?>	
	</div>
</div>

haddock.png

2. blog-post.php 

How can I output the post that is linked to. I mean the page with the full blog-item? I use this code but it does not work.

$blog = $modules->get("MarkupBlog");
$singlePost = $pages->get('template=blog-post, sort=-created');
$out = $blog->renderPosts($singlePost);
echo $out;

Can anyone help out or give directions on how to find solutions

Share this post


Link to post
Share on other sites
1 hour ago, tooth-paste said:

1. Image summary page
My blog index page works but I would like to have the image on the right side. Can I do this with CSS (img.post-featured-image{float:right})?

Yes, that's CSS issue. Try and see if it works ^_^.

1 hour ago, tooth-paste said:

2. blog-post.php 

How can I output the post that is linked to. I mean the page with the full blog-item? I use this code but it does not work.

Are you using the demo template files that come with blog or did you create/or are using a blank blog-post.php? If the latter, then please have a look at the example demo file. It is a bit redundant to have the code you pasted (which is an example code I gave for some other context) within a blog-post page itself (i.e. redundant to use it in blog-post.php which is the template file for a single blog post).

1 person likes this

Share this post


Link to post
Share on other sites

Yes, I meant AND. Rewriting URL as you suggest is way beyond my capability. I guess I'd have to live with it. In any case it's no biggie.

About the categories, sorry about the confusion.  What I meant was the categories that are displayed at the end of each post. Ideally when you click on it it should take you to the pages with the "news" and "blog" template respectively rather than the page with "category" template.  I hope I'm makes sense.

Thanks for your help.

Share this post


Link to post
Share on other sites

Hi. I cannot edit the blog using the dashboard panel, every time I try to save a blog-post (or add a category or edit the blog setting etc) the page re-loads and nothing is saved. This is very strange because it used to work fine. I've tried with both 'blog-author' & 'superuser' roles, checked the logs in PW, check the developer tools on browser, tried with different browsers... I don't see any error message anywhere, I wish I could post more information. On my local machine the blog is still working, on the live server (same files) I have problems. Anyone had this problem before?

PW 2.8.35 - Blog 2.4.0

Share this post


Link to post
Share on other sites
On 17/02/2017 at 4:51 PM, MaryMatlow said:

What I meant was the categories that are displayed at the end of each post. Ideally when you click on it it should take you to the pages with the "news" and "blog" template respectively rather than the page with "category" template.  I hope I'm makes sense.

That's the expected behaviour. When you click on a category, you are taken to its page and are shown a list of all the posts that use that category, i.e. /category/my-category/. I can't remember how you set up, but if your "news" is a category, clicking on a post categorised under "news" should take you to /category/news/ with a list of all posts classified as news items. 

7 hours ago, palacios000 said:

This is very strange because it used to w

Seems something changed in your system? Some autoload module that is affecting save? I have tested and it works fine here. Does the same thing happen if you edit the post page normally? (i.e. not in the Dashboard modal).

Share this post


Link to post
Share on other sites

As you suggested I use our demo templates and alter them to my own needs. It works great. Thank you. Can you help me out with the topNav.

On the blog page with all post there is a topNav with selectable Categories. When you click on a single post, the topNav is replaced with a subNav 'See also' and 'Related categories'. Can I remove the subNav and replace it with the topNav? So I would like to always select Categories in stead of 'Related post'. 

In the template file 'blog-post' I removed the subnav. Is it possible to add the topNav(categories) on a single post?

Share this post


Link to post
Share on other sites

The method rendering those side menus is renderNav(). It takes as a second parameter an array or PageArray. In blog.post (the template file for a single post, which you wish to edit), around lines 20 - 22, you can see it takes the PageArray made up of the current post's categories (blog_categories) as follows:

if(count($page->blog_categories)) $subNav .= $blog->renderNav(__('Related Categories'), $page->blog_categories);

In the main blog page, i.e. the one that uses the template blog.php, around lines 14 - 15, we see the same function taking a different PageArray; one that is made up of ALL the categories as follows:

$categories = $pages->get('template=blog-categories');// this grabs the parent of all category pages
$subNav = $blog->renderNav($categories->title, $categories->children);// we pass its children, a PageArray made up of all categories

So, the latter code (the lines 14 - 15 in blog.php) is what you need to copy to your blog-post.php to achieve your desired result. Please note that in that demo code, there is no limit set to the number of categories that are returned. If you have lot's of categories you will want to place a limit on the children, e.g. $categories->children('limit=50');

Share this post


Link to post
Share on other sites

Preview of new Blog Dashboard UI coming in the next update...

Posts List

new-blog-ui-posts.thumb.png.becafecec27d3f5616477764c032b2ef.png

Quick Post (now in modal)

new-blog-ui-quick-post-with-rte.thumb.png.79f256ed52c307e3fb2fc328e78a1c1c.png

Thoughts? Opposition :)?

Edited by kongondo
2 people like this

Share this post


Link to post
Share on other sites
On 18/02/2017 at 7:29 PM, kongondo said:

Seems something changed in your system? Some autoload module that is affecting save? I have tested and it works fine here. Does the same thing happen if you edit the post page normally? (i.e. not in the Dashboard modal).

Thanks for the quick reply! Update:

  • I can edit or add pages normally, I have role 'superuser'
  • From the dashboard I can only edit posts, I cannot add new ones.
  • I have re-installed the blog module, with same results
  • I have checked the user permissions, both on the role 'blog-author' & from the blog- templates
  • I've cleared PW cache in /assets/cache
  • probably on the live server, I was never able to add new posts from the dashborad

What else can I check? Thanks a lot for any hint

Share this post


Link to post
Share on other sites

Hello to all,

i'm new to processwire and started with an test installation (3.0.42) with multilanguage support and the blog modul. I have write a test post and if I call it at the frontend I get the following error message:

Recoverable Fatal Error: Argument 1 passed to MarkupBlog::renderComments() must be an instance of CommentArray, instance of ProcessWire\CommentArray given, called in C:\xampp\htdocs\pwire2\site\assets\cache\FileCompiler\site\templates\blog-post.php on line 54 and defined (line 1059 of C:\xampp\htdocs\pwire2\site\assets\cache\FileCompiler\site\modules\ProcessBlog\MarkupBlog.module) 

I've searched the forum but nothing found. Would it be better to use PW 2.8.35 for a new project?

Thanks for your help!

Alex

Share this post


Link to post
Share on other sites
On 20/02/2017 at 9:11 AM, palacios000 said:

What else can I check? Thanks a lot for any hint

Difficult to tell at this point. Could you confirm that the post (meaning the textarea, etc, inputs) are actually sent? JS errors? If it works on your local server but not the live one...that tells us there is some configuration in the live server affecting things. Other than these, I could have look if you are able to grant me temporary access.

On 20/02/2017 at 5:34 PM, al-ex23 said:

i'm new to processwire and started with an test installation (3.0.42) with multilanguage support and the blog modul. I have write a test post and if I call it at the frontend I get the following error message:

Welcome to the forums and ProcessWire @al-ex23. I am not sure whether that's a file-compiler related problem. Does refreshing several times help? 

Share this post


Link to post
Share on other sites

Happy to announce Blog 2.4.1 is now available for testing on the dev branch. Please test and let me know that it works OK, all the way from install to uninstall and everything in between, thanks.

This version is highly refactored, brings in a new cleaner UI (at least I think so), including better sorting of posts/categories/tags, author bios, category description (not sure many know that categories have a field for entering descriptions), etc and one new (frontend) option that enables the control of the 'edit' link that appears for logged in users when viewing a Blog Post. The link can now be placed at the top, bottom or switched off altogether (@thanks to antoiba86 idea).

Here are a couple of screens. I have tested in 2.7.2, 2.8.35 and 3.0.42 and everything seems to work fine. However, further tests are needed before I commit this to master. That's where you come in, thanks.

 

Blog 2.4.1 - 001.png

Blog 2.4.1 - 002.png

Blog 2.4.1 - 003.png

Blog 2.4.1 - 004.png

Blog 2.4.1 - 005.png

Blog 2.4.1 - 006.png

Blog 2.4.1 - 007.png

Blog 2.4.1 - 008.png

Blog 2.4.1 - 009.png

Blog 2.4.1 - 010.png

Blog 2.4.1 - 011.png

Blog 2.4.1 - 012.png

Edited by kongondo
7 people like this

Share this post


Link to post
Share on other sites

@kongondo Seriously this is an awesome job, I use the blog alot and this looks really clean and 'lit'. Can't wait for the new UiKit however would there be a guide to other devs so their Modules looks clean with the new UI 

2 people like this

Share this post


Link to post
Share on other sites

Hi @kongondo, I had to reinstall the Blog module as it was giving a problem (it was completely disabled, couldn't perform any action: post, delete etc.). Anyway ,I reinstalled and everything works fine but for the comments. It is giving me this error:

 

Recoverable Fatal Error: Argument 1 passed to MarkupBlog::renderComments() must be an 
instance of CommentArray, instance of ProcessWire\CommentArray given, called 
in /xxx/html/site/templates/blog-post.php on line 53 and 
defined (line 1059 of /xxx/html/site/modules/ProcessBlog/MarkupBlog.module) 

This is the code I'm using on blog_post.php:

 

	$blog = $modules->get("MarkupBlog");
    $blogConfigs = $modules->getModuleConfigData('ProcessBlog');
    $renderComments = $blogConfigs['commentsUse'] == 1 ? $blog->renderComments($page->blog_comments) : '';

    $options = array('post_date_text' => on, 'post_categories'=>0, 'post_comments' => 2, 
	'post_large_image' => 1, 'post_author' => 1);
    $content = $blog->renderPosts($page, false, $options) . $blog->postAuthor() .
	$renderComments . $blog->renderNextPrevPosts($page);//with post author widget
    
    //include the main/common markup
    require_once("blog-main.inc");

 

 

I'm using ProscessBlog 2.4 and Processwire 3.0.53

 

What could be the problem here? Thanks for your help.

 

Share this post


Link to post
Share on other sites

Just an update: This was resolved when I recompiled the modules. 

In trying to fix this I had uninstalled ProcessCommentsManager, but now I can't install it back. It doesn't seem to exist. Is there any other way to manage comments?

Share this post


Link to post
Share on other sites

Hi @MaryMatlow

Glad you got it sorted. That's a core module, so check under core/modules/ in the modules page, specifically a process module called 'Comments'.

1 person likes this

Share this post


Link to post
Share on other sites
On 2017-03-02 at 6:21 PM, kongondo said:

Hi @MaryMatlow

Glad you got it sorted. That's a core module, so check under core/modules/ in the modules page, specifically a process module called 'Comments'.

Done. Thank you.

Share this post


Link to post
Share on other sites

I've moved my site to a other server and getting a fatal error! Please help.

Notice: Undefined variable: class in /var/www/vhosts/website/httpdocs/site/assets/cache/FileCompiler/site/modules/Blog/MarkupBlog.module on line 1443

Fatal error: Class 'DOMDocument' not found in /var/www/vhosts/website/httpdocs/site/assets/cache/FileCompiler/site/modules/Blog/MarkupBlog.module on line 885

Error: Class 'DOMDocument' not found (line 885 of /var/www/vhosts/website/httpdocs/site/modules/Blog/MarkupBlog.module) 

 

Share this post


Link to post
Share on other sites
59 minutes ago, tooth-paste said:

I've moved my site to a other server and getting a fatal error!

 

59 minutes ago, tooth-paste said:

Error: Class 'DOMDocument' not found

Seems your new server does not have the PHP extension DOMDocument installed. Ask your host to install it for you.

1 person likes this

Share this post


Link to post
Share on other sites

Hello Community,

With the module ProcessBlog I have only problems and can not install it right now. Please check this under https://processwire.wpzweinull.ch/blog-9/. There is something missing CSS or the template is not properly installed.

What can it be what has led to this problem? I installed the modules ProcessBlog scratch. Downloaded from the database of the modules, installed, selected the style and then installed the blog with categories and settings.

But something is still quite wrong.

I would be grateful for any tip very.

Thanks in advance.

Share this post


Link to post
Share on other sites
You must assign a template to the page before setting custom field values (title__data) [pageClass=Page, template=]

This error is displayed after installing the blog component. So something really does not happen.

Share this post


Link to post
Share on other sites

@Alex L,

Welcome to the forums.

Please note that for modules that have their own support forums, we do not start other threads but rather post in those support threads. OK, to your question. 

If you want to use Blog's demo template files and styles, it is easiest if you install ProcessWire with a 'blank profile'. What is happening is that the profile you are using (I think it's called 'site-default') is conflicting with Blog's template files. I am in a bit of a rush so cannot explain further.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Robin S
      I have had this module sitting in a 95% complete state for a while now and have finally made the push to get it out there. Thanks to @teppo for his Hanna Code Helper module which I referred to and borrowed from during development.
      https://github.com/Toutouwai/HannaCodeDialog
      HannaCodeDialog
      A module for ProcessWire CMS/CMF. Provides a number of enhancements for working with Hanna Code tags in CKEditor. The main enhancement is that Hanna tags in a CKEditor field may be double-clicked to edit their attributes using core ProcessWire inputfields in a modal dialog.
      Requires the Hanna Code module.
      Installation
      Install the HannaCodeDialog module using any of the normal methods.
      For any CKEditor field where you want the "Insert Hanna tag" dropdown menu to appear in the CKEditor toolbar, visit the field settings and add "HannaDropdown" to the "CKEditor Toolbar" settings field.
      Module configuration
      Visit the module configuration screen to set any of the following:
      Exclude prefix: Hanna tags named with this prefix will not appear in the CKEditor toolbar dropdown menu for Hanna tag insertion. Exclude Hanna tags: Hanna tags selected here will not appear in the CKEditor toolbar dropdown menu for Hanna tag insertion. Background colour of tag widgets: you can customise the background colour used for Hanna tags in CKEditor if you like. Dialog width: in pixels Dialog height: in pixels Features
      Insert tag from toolbar dropdown menu
      Place the cursor in the CKEditor window where you want to insert your Hanna tag, then select the tag from the "Insert Hanna tag" dropdown.

      Edit tag attributes in modal dialog
      Insert a tag using the dropdown or double-click an existing tag in the CKEditor window to edit the tag attributes in a modal dialog.

      Tags are widgets
      Hanna tags that have been inserted in a CKEditor window are "widgets" - they have a background colour for easy identification, are protected from accidental editing, and can be moved within the text by drag-and-drop.

      Options for tag attributes may be defined
      You can define options for a tag attribute so that editors must choose an option rather than type text. This is useful for when only certain strings are valid for an attribute and also has the benefit of avoiding typos.
      Add a new attribute for the Hanna tag, named the same as the existing attribute you want to add options for, followed by "__options". The options themselves are defined as a string, using a pipe character as a delimiter between options. Example for an existing attribute named "vegetables":
      vegetables__options=Spinach|Pumpkin|Celery|Tomato|Brussels Sprout|Potato You can define a default for an attribute as normal. Use a pipe delimiter if defining multiple options as the default, for example:
      vegetables=Tomato|Potato Dynamic options
      Besides defining static options as above, you can use one Hanna tag to dynamically generate options for another. For instance, you could create a Hanna tag that generates options based on images that have been uploaded to the page, or the titles of children of the page.
      Your Hanna tag that generates the options should echo a string of options delimited by pipe characters (i.e. the same format as a static options string).
      You will probably want to name the Hanna tag that generates the options so that it starts with an underscore (or whatever prefix you have configured as the "exclude" prefix in the module config), to avoid it appearing as an insertable tag in the HannaCodeDialog dropdown menu.
      Example for an existing attribute named "image":
      image__options=[[_images_on_page]] And the code for the _images_on_page tag:
      <?php $image_names = array(); $image_fields = $page->fields->find('type=FieldtypeImage')->explode('name'); foreach($image_fields as $image_field) { $image_names = array_unique( array_merge($image_names, $page->$image_field->explode('name') ) ); } echo implode('|', $image_names); Choice of inputfield for attribute
      For attributes which you have defined options for, you can choose the inputfield that is used to select from the options.
      Inputfields that support the selection of a single option are select (this is the default inputfield for attributes with options so it isn't necessary to specify it if you want it) and radios.
      Inputfields that support the selection of multiple options are selectmultiple, asmselect and checkboxes.
      You can also specify a checkbox inputfield - this is not for attributes with defined options but will limit an attribute to an integer value of 1 or 0.
      The names of the inputfield types are case-insensitive.
      Example for an existing attribute named "vegetables":
      vegetables__type=asmselect Descriptions and notes for inputfields
      You can add a description or notes to an attribute and these will be displayed in the dialog.
      Example for an existing attribute named "vegetables":
      vegetables__description=Please select vegetables for your soup. vegetables__notes=Pumpkin and celery is a delicious combination. Notes
      When creating or editing a Hanna tag you can view a basic cheatsheet outlining the HannaCodeDialog features relating to attributes below the "Attributes" config inputfield.
      Troubleshooting
      HannaCodeDialog includes and automatically loads the third-party CKEditor plugins Line Utilities and Widget. If you have added these plugins to your CKEditor field already for some purpose and experience problems with HannaCodeDialog try deactivating those plugins from the CKEditor field settings.
    • By Soma
      PageListImageLabel
      Marty requested and sponsored a new module little while ago.
      http://processwire.c...t-image-option/
      I just wanted to create a separate release thread. Many thanks to Marty for sponsoring and making this possible. This just shows how great this community is.
      So here it is the Page List Image Label module. It enables you to add thumbnails of images from the pages in the admin page tree.
      Download:
      http://modules.processwire.com/modules/page-list-image-label/
      Github: 
      https://github.com/somatonic/PageListImageLabel
      A screenshot of it in production. (old version)

    • By FIA2008
      How can I change the output of `Page::render`?
      I've created a hook before page::render, but when I set the $event->return to something else, my whole page is replaced with that value.
      For example:
       
      public function beforePageRender(HookEvent $event) { $event->return = 'blaat'; } This will cause my whole page to be nothing more than just 'blaat'.
      What I want, is that my menu, footer etc. are still visible but only the content of that page is replaced.
    • By kixe
      Today I have been running in mysql errors using @renobird s Module MarkupActivityLog which still uses mysqli Driver.
      @all developers
      Although mysqli is still supported PDO driver is the default database driver in PW since https://processwire.com/about/news/introducing-processwire-2.4/
      and its strongly recommend to all module authors to use/change-to PDO driver instead of mysqli.

      @renobird I have sent a pull request.