I upgraded from 2.4.5.0. to OJS 3.0.1. I inherited custom blocks and I need to customize them, but they are not shown in Plugins list. I only see them in Website Settings–>Appearance were I can activate or deactivate them. Also, I don’t know how to make a new custom block.
Thanks a lot. I found the Custom block manager , however, some blocks can be edited, i.e., their Edit link works, while for others, Edit link does not work. The Url of the editable blocks is proper: …/index.php/jhsci/$$$call$$$/plugins/generic/custom-block-manager/controllers/grid/custom-block-grid/edit-custom-block?blockName=MyBlock
while the URL of non-editable blocks is just ending with # , like this: …management/settings/website#
The limitations on naming for custom blocks have changed between OJS 2.x and 3.x – it’s possible that the names you were using in OJS 2.x are no longer allowed under 3.x. Are there any non-alphanumeric characters used in the names of the blocks that aren’t working?
Regards,
Alec Smecher
Public Knowledge Project Team
This block’s name is “one two”, and the space is the problem. Edit the entry to replace the space with an underscore (_). (Be careful not to change the length of the name! That 7 in the setting value is the expected string length and PHP will get confused if you modify it.)
Then you’ll need to make the same change to that plugin’s own settings:
select * from plugin_settings where plugin_name='one two';
…will give…
+-------------+------------+--------------+-------------------------------------------+--------------+
| plugin_name | context_id | setting_name | setting_value | setting_type |
+-------------+------------+--------------+-------------------------------------------+--------------+
| one two | 1 | blockContent | a:1:{s:5:"en_US";s:15:"<p>asdfadsf</p>";} | object |
| one two | 1 | context | 1 | int |
| one two | 1 | enabled | 1 | bool |
+-------------+------------+--------------+-------------------------------------------+--------------+
Once again, change one two to one_two.
You may have to flush your data cache before the changes will take effect.
Regards,
Alec Smecher
Public Knowledge Project Team
Dear Alec,
how we can put custom block on left side of page? In OJS 2.x we have this opportunity but in OJS 3.0.1 I cannot find how to do that.
Regards,
Lazar
In my 3.0.1 installtion, Custom Block Manager plugin is enabled and I have a few custom blocks migrated from 2.4.6. I have done the update in db to modify the name of the blocks in order to not have space.
The problem is that those blocks are not listed in “Sidebar Management” in “Appearance” tab and therefore not displayed in the sidebar of my website. Would you please assist?
Yes I had flushed data cache. I deleted the block and put back in and it is now displayed. One change I noticed is that in my old db I had a forth record for each of the blocks:
+-------------+------------+--------------+-------------------------------------------+--------------+
| plugin_name | context_id | setting_name | setting_value | setting_type |
+-------------+------------+--------------+-------------------------------------------+--------------+
| one two | 1 | blockContent | a:1:{s:5:"en_US";s:15:"<p>asdfadsf</p>";} | object |
| one two | 1 | context | 1 | int |
| one two | 1 | enabled | 1 | bool |
| one two | 1 | seq | 7 | int |
+-------------+------------+--------------+-------------------------------------------+--------------+
setting_name: seq
This record was not added when I recreated the block.