Gossamer Forum
Home : Products : Gossamer Links : Development, Plugins and Globals :

PageBuilder Plugin

(Page 6 of 10)
> > > >
Quote Reply
Re: [rsahertian] PageBuilder Plugin In reply to
I guess you can just set Build_Static to YES :-)

Klaus

http://www.ameinfo.com
Quote Reply
Re: [yogi] PageBuilder Plugin In reply to
Yogi,

I'm considering modifying your plugin to allow the creation of aditional pages when building category pages (span pages) this will also allow me to have a certain degree of control when building directories with a very high number of links (I can implement a staggered build)

The question I have for you is related to your plugin development roadmap. It really doesn;t make sense for me to start making modifications in your Plugin if you have them planned in the near future. So, what I really want to know is that.. your intentions regarding the Pagebuilder plugin future developments.

Thanks,
Quote Reply
Re: [klauslovgreen] PageBuilder Plugin In reply to
Hello Klaus,

But I want to build the detailed pages in their own (sub)directories
Not in default build directory.

Thanks,
Ron
Quote Reply
Re: [rsahertian] PageBuilder Plugin In reply to
Look at the Build Directory field - enter the loccation of the subfolder relative to the root path set under settings

Cheers
Klaus

http://www.ameinfo.com
Quote Reply
PageBuilder Plugin Pre-Sales ???'s In reply to
I hope this is the correct place to ask a few pre-sales ?'s.

1. Can the Plugin be uninstalled if it doesn't work out w/o causing any problems or data corruption?

2. I've already made changes to existing fields in links and categories tables and added a few new fields. Is installation of Plugin going to cause any problems with my data structure changes?

3. Will this work with v2.1.2?

4. Does this make use of the users table? I am planning to use the vBulletin integration and I "guess" this option causes the existing users table to be bypassed in favor of the data in the vB database.
Quote Reply
Re: [vicos2] PageBuilder Plugin Pre-Sales ???'s In reply to
Quote:
1. Can the Plugin be uninstalled if it doesn't work out w/o causing any problems or data corruption?
Yes - I have tried it several times

Quote:
2. I've already made changes to existing fields in links and categories tables and added a few new fields. Is installation of Plugin going to cause any problems with my data structure changes?
no


Quote:
3. Will this work with v2.1.2?
Yes

Quote:
4. Does this make use of the users table? I am planning to use the vBulletin integration and I "guess" this option causes the existing users table to be bypassed in favor of the data in the vB database.

No quite sure what you mean - but you can make pages with the Pagebuilder and set it to be only viewable to registered users for example. So you can make pages for indidual users as well - if that is what you refer to.

http://www.ameinfo.com
Quote Reply
Re: [fmp] PageBuilder Plugin >>> 2 questions In reply to
In Reply To:
Hi yogi

I have done some changes and it works fine (very good for seach engines)
I would also like to do the following
sub init {
# -------------------------------------------------------------------
# initialize plugin variables

$PB_CFG = Links::Plugins->get_plugin_user_cfg('PageBuilder');
$PAGEBUILDER_FIELDS = { link => { filename => [qw/LinkID Title/],
directory => [qw/LinkID Full_Name CategoryID/] },
category => { filename => [qw/CategoryID/],

I would like to know if there is an easy way to make my <%Title%>.html files working like the full catégory name (with a _ instead of spaces, &....)



Hi yogi do you have an idea to replace the spaces but an underscore? then Icould have the following :

http://www.mysite.com/...itle_of_my_link.html

txs

FMP
Quote Reply
Re: [fmp] PageBuilder Plugin >>> 2 questions In reply to
fmp:

I couldn't agree with you more!
I posted previously:
---------------------------------------------
Pagebuilder is excellent. Buy it.

IT DOES need an update, which will make it more excellent. But it does not crash, and appears to be pretty bug free.

IN the near future, I hope that Yogi adds:



1. The ability to allow building a file based on the site name with spaces turned into underlines or dashes. For example, for the link Titled "Gossamer Threads" , Link ID # 27 would be built as: /Site_Reports/Gossamer_Threads.html instead of /Site_Reports/Report_27.html

2. A way of choosing to NOT build a page , or limiting the page build to "x" links.

A checkbox to activate or deactivate that pages building and a

"build first X links" setting would be excellent.

3. A way of changing the build order of the PAgeBuilder pages.
Quote Reply
Re: [webslicer] PageBuilder Plugin >>> 2 questions In reply to
Hi

thanks for the comments.

1. something similar to this will be added to the next release.

2. If you don't want to build a page, simply set 'Build Static' to 'No', and it won't be built. If you want to build only links with ID less than a certain number (let's say 100), set 'Build Condition' to 'ID < 100'

3. Why is changing the build order important for you?

Ivan
-----
Iyengar Yoga Resources / GT Plugins
Quote Reply
Re: [yogi] PageBuilder Plugin >>> 2 questions In reply to
Hello Ivan,



May I please ask you if you have any idea of when your next update will be released?

My bad if you have already answered this one recently...
Quote Reply
Re: [yogi] PageBuilder Plugin >>> 2 questions In reply to
Yogi;

1. Fantastic, how soon??Cool

2. Thanks for the tip about build static=no. Also thanks about the link < 100. I just figured that out yesterday. Still, a global or overriding "test" mode where all would build only x links, would be easier.

However, this trick is not always practical.

In our case, we build multiple pages (over 10 per link) so we would constantly have to go in and change the build info. So far, PageBuilder builds over 25 different pages:))

3. Why is changing the build order important? If build order was changable, we would not have to wait 30 minutes for the latest page test to build, as it could be put first in order. The last page entered into PageBuilder is always the LAST to be built!

4. Some basic random element functionality would be fantastic, also. That way, not all pages would be exactly the same.

Highest regards,

webslicer
Quote Reply
Re: [webslicer] PageBuilder Plugin >>> 2 questions In reply to
Just to confirm before I buy ...

Could I use PageBuilder to output a file containing a list of all the top level categories so they could be SSI'd into all other .shtml pages on a site?

(assuming there isn't already a way to do this - but I can't see how)
Quote Reply
Re: [yogi] PageBuilder Plugin >>> 2 questions In reply to
Hi Yogi

With PB plugin, to have the following : www.mysite.com/link1_title_L1.html (for all my links)

I have created the following global called title_nospace :

sub {
my $ID = shift;
my $Title = shift;
$Title =~ y/ \t\r\n?"'#/__/d;
return $Title . '_L' . $ID;
}


(inspired by your URL rewriting global)

then in the Build Filename Field I did put <%title_nospace($ID,$Title)%>.html

but when I try to build pages I have the following erreor message :

Unable to build link page
Filename should contain one of the following tags: , and/or
Directory should contain one of the following tags: , ,

Could you help me


Txs

FMPWink
Quote Reply
Hacking PageBuilder to get nice filenames In reply to
Hiya;

Who wants this:

14.html
(from ID/LinkID)
when they can have this:

Quality_Perl_Sites.html
(from Title)

as built filenames.

It can't be done as a plugin, as Pagebuilder will NOT run/compile a global.

However, you inspired me to try to solve this.

There is a solution if you are willing to hack his plugin.

Two changes are needed.

1. To make "<%Title%>" to be passable (there is a list!) into the link page type build routine.

2. The second change is just as you had in your global - replace spaces with underlines.

Steps:

Edit PageBuilder.pm (uninstall, hit edit, then edit again next to PageBuilder.pm) 71870 bytes in ver. 1.04


1. In the sub init routine , the top line must be edited to be as follows:

$PAGEBUILDER_FIELDS = { link => { filename => [qw/LinkID Full_Name Title/],

I added in the Full_Name and Title variables.
Once you do this, you can use <%Title%> in the filename field. But the spaces in the title will remain. To get rid of the spaces, I used the previous published routine.

2. Edit the sub _build_link_page subroutine. It's about 40% of the way into the file.
For dynamic displays, there will be another routine to edit. This covers static pages only.

Just before this line:

$filename ||= $CFG->{build_index};

add in this line:

$filename =~ y/ \t\r\n?"'/__/d;

to change spaces to a underline.
(thanks to fmp)

3. Hit UPDATE, then install or re-install the plugin.

Notes:
Backup your PageBuilder file first.
I am NOT a PERL programmer. I don't know PERL.
I only hack...
I hope it is ok with Yogi publishing this hack!
Quote Reply
Re: [CrazyGuy] PageBuilder Plugin >>> 2 questions In reply to
Edit: Having reread your post, I'm guessing that maybe I did misunderstand if you want them on non-links pages!

If I understand you correctly, you can do this with a simple global:

sub {
my $tags = shift;
my $cat_db = $DB->table('Category');
$cat_db->select_options ('ORDER BY Name');
my $sth = $cat_db->select ( { FatherID => 0}, ['Full_Name','Name'] );
my $output="";
while (my ($root_cat,$full_name) = $sth->fetchrow_array) {
my $url = $cat_db->as_url($root_cat);
$output .= qq~<a href="$CFG->{build_root_url}/$url/"><b>$full_name</b></a><br>~;
}
return $output;
}

Laura.
The UK High Street

Last edited by:

afinlr: May 29, 2003, 4:37 PM
Quote Reply
Re: [yogi] PageBuilder Plugin In reply to
Yogi,

Had already a discussion with Laura about the possibility to build pages with an alpha-bar.

Ex: For each category there must be a A-Z listing.
a|b|c|d|e|f etc.... All must be done static.

Is that possible with PageBuilder??

Thanks.
RonCrazy
Quote Reply
Re: [afinlr] PageBuilder Plugin >>> 2 questions In reply to
In Reply To:
If I understand you correctly, you can do this with a simple global:
Simple for you perhaps Tongue Works great - I hadn't thought about using globals for this kind of thing, still getting to grips with the possibilities.



Thanks



BTW - bought pagebuilder anyway - will use it for other things.

Last edited by:

CrazyGuy: May 30, 2003, 2:10 AM
Quote Reply
Re: [webslicer] Hacking PageBuilder to get nice filenames In reply to
Txs webslicer

Its works fine...Angelic

Quote:
$filename =~ y/ \t\r\n?"'/__/d;
to change spaces to a underline.

What is the command if I want also the following :
- replace the . by an underline
- replace the , by an underline
- replace the : by an underline
- replace the ; by an underline
- replace the ( and the ) by an underline
- replace the & by an underline
- replace é, è and ê by a the letter e
- replace à by the letter a
- replace Upper Case by lower case


txs

FMPWink
Quote Reply
Re: [yogi] PageBuilder Plugin >>> 2 questions In reply to
Hi

Yogi

The more I use your plugin then more I love itSmile

Could you tell us what will be all the new features (categories span pages? ability to use more than one template set? ability to build some chosen pages? and when the next release will be out ?

Txs

FMP

Last edited by:

fmp: Jun 3, 2003, 11:10 AM
Quote Reply
Using Pagebuilder to make static pages in a hashed directory structure? In reply to
I'm still working on a problem mentioned in http://www.gossamer-threads.com/...orum.cgi?post=232182 back in February.

It just occurred to me that Pagebuilder might hold the solution ...

In brief, our categories are not really categories at all -- they have no hierarchical structure, and any attempt to impose one would be unworkably artificial. It would be better to think of records rather than categories. LSQL is so much more developed than DbmanSQL (URL checking, plugins, better search, etc) that I think it is worth exploring an LSQL solution.

We need a hashed directory structure with depth = 4, eg: ../a/b/c/d/ and within each leaf directory, up to 100 pages, eg: ../a/b/c/d/index00.html to ../a/b/c/d/index99.html -- this structure would allow us up one million records (much more than we will ever get to -- 150,000 is a more realistic maximum).

We can't use LSQL in the normal way to build a directory with depth = 6, eg: ../a/b/c/d/e/f/ because there is nothing at the intermediate depths, eg: at level 'c' there is nothing at all, so we neither need nor want to have index pages at those levels, as they would be meaningless.

So I'm wondering if Pagebuilder could ...

* Using normal LSQL tables, build static category pages in a directory specified in a category column (the record would say where to build the page).

* Build only pages that were new or updated

Here is the difficult part -- if the pages were built, how difficult would it be to search them? What we would be hoping for is search on category data as much as link data.
Quote Reply
Re: [YoYoYoYo] Using Pagebuilder to make static pages in a hashed directory structure? In reply to
Hi

In Reply To:
* Using normal LSQL tables, build static category pages in a directory specified in a category column (the record would say where to build the page).

You can build static pages for all categories with PageBuilder. The build directory and filename can contain all the fields in the Category table. I thinks this is precisely what you want.

In Reply To:
* Build only pages that were new or updated
When you do a 'Build Changed' of your Links directory, also the PageBuilder plugin will only build the changed links/categories.

I hope this helps.

Ivan
-----
Iyengar Yoga Resources / GT Plugins
Quote Reply
Re: [yogi] Using Pagebuilder to make static pages in a hashed directory structure? In reply to
In Reply To:
I hope this helps.

Yes, it helps a lot -- Pagebuilder is a remarkable plugin.

No problem building the pages how and where we want them (though we don't yet know how we will obtain a value for the 'destination directory' column).

One problem remains -- it's not something that can be fixed in Pagebuilder, but maybe other pagebuilder users have already done it -- how can we get search.cgi to return links to the Pagebuilder pages instead of the normal LSQL category pages?
Quote Reply
Re: [YoYoYoYo] Using Pagebuilder to make static pages in a hashed directory structure? In reply to
In Reply To:
how can we get search.cgi to return links to the PageBuilder pages instead of the normal LSQL category pages?

This can be done quite easily. On search_results.html, you need to use <%loop category_results_loop%>, and you can easily construct the path to the PageBuilder category page.

Ivan
-----
Iyengar Yoga Resources / GT Plugins
Quote Reply
Re: [yogi] Using Pagebuilder to make static pages in a hashed directory structure? In reply to
Thanks Yogi ... this is turning out to be much easier than we imagined.

What we are actually trying to do is take a database of information about people (some of which have multiple links, but most have none) and present them in LSQL with its advanced features.

Each person record would be one LSQL category. As there is no logical categorisation scheme, DbmanSQL initially seemed like a good choice, but we can't quite get it to do what we want, and it does not build static pages (an option we require at this stage).

However, a combination of LSQL + Pagebuilder now looks like a very good alternative to DbmanSQL (assuming we can tidy up the remaining loose ends).

Alternatively, we could envisage using DbmanSQL (or some other database system) to acquire new records, and write a bit of Perl to insert them into LSQL at regular intervals.

The columns required to build the directory structure can be calculated when a new record is added, eg: if the new record has ID 9876, the static page should be ../0/0/9/8/76.html, so we calculate and store 0/0/9/8 and 76 in two columns to be passed to Pagebuilder build directory and build filename
Quote Reply
Re: [yogi] PageBuilder Plugin >>> 2 questions In reply to
Hi-

I'm using the PageBuilder plugin, and it works great. With regard to the Page Condition, I would like to be able to build static pages only for those pages where a certain field has a value. In other words, if the field is empty then I don't want it to build that page. What should I enter into the Page Condition to make this happen if the Field is called User_Introduction? Would it be something like:

if User_Introduction is Not Null

I'm not sure the syntax that could make this happen.

-Frank
> > > >