Jump to content
Wanze

Pages2Pdf

Recommended Posts

Glad it works! I'll check if this is an issue with my module or mPDF in general.

Am I write that the file call's the module needs to be included before any other files? I am assuming this has to do wit the header that has to be sent.

The order of the includes doesn't matter, but you need to be careful not sending any output (headers) to the browser before downloading the PDF. For example echo out something, though in the context of ProcessWire all echos in your template are catched by PHPs output buffer, so you should be fine. You'd get warnings if that happens, something like "Headers already sent" :)

Cheers

  • Like 2

Share this post


Link to post
Share on other sites

Thanks Wanze, the output headers was one of my issues indeed.

I am back at it again with some issues getting custom fonts to load. In this case I have read a few topics in the forum as well as the manual here. I am attempting to include an Open Sans font. The steps I have taken are so.

Added ttf file to modules/Pages2Pdf/mdf/ttfonts

modified config_fonts.php 

$this->fontdata = array(
  "dejavusanscondensed" => array(
     'R' => "DejaVuSansCondensed.ttf",
     'B' => "DejaVuSansCondensed-Bold.ttf",
     'I' => "DejaVuSansCondensed-Oblique.ttf",
     'BI' => "DejaVuSansCondensed-BoldOblique.ttf",
  ),
  "opensans" => array(
     'R' => "OpenSans.ttf",
     'B' => "OpenSansB-Bold.ttf",
     'I' => "OpenSansI-Italic.ttf",
  ),

Changed Mode in the module settings to "s"

Updated the Default Font in the Module Settings to "OpenSans"

Anything stand out that I am missing?

Share this post


Link to post
Share on other sites

Hi,

All Chinese characters in the output pdf file become ???. How to config to use CJK fonts??

Thanks.

Gideon

Share this post


Link to post
Share on other sites

Hi,

All Chinese characters in the output pdf file become ???. How to config to use CJK fonts??

Thanks.

Gideon

Work it out myself. Maybe someone need the answer. Here it is.

1. Download mpdf 6.0 from http://www.mpdf1.com/mpdf/index.php

2. copy the Sun-ExtA.ttf file to /path/to/your/web/site/modules/Pages2Pdf/mpdf/ttfonts

3. add the following lines to /path/to/your/web/site/modules/Pages2Pdf/mpdf/config_fonts.php

       "sun-exta" => array (

                'R' => "Sun-ExtA.ttf",

                'sip-ext' => 'sun-extb',

                ),

4. change the mode to R in WirePdf module config page

5. Chang fonts to sun-exta in WirePdf module config page

Done.

Gideon

  • Like 2

Share this post


Link to post
Share on other sites

Hello and thanks for the great module!!

Everything seems to work but I have a doubt.

I should create a pdf of a list of events that are setup by the user via a form.
I would then pass a variable with the exact list to the template that I use to create PDF, but I can not.
Some idea?
 
Thanks so much
Andrea

Share this post


Link to post
Share on other sites

Hi a.masca

Can you share your current code? Do you store the events inside ProcessWire or are they only available after submitting the form?

Cheers

Share this post


Link to post
Share on other sites

Hi a.masca

Can you share your current code? Do you store the events inside ProcessWire or are they only available after submitting the form?

Cheers

Thanks Wanze for the answer.

In the page where I want to put my download pdf button,

I have a list of reservations (every reservation is a page) that the user can filter with a form.

example: $prenotazioni = $pages->find("template=prenotazione, giorno=xxx");

So my goal is to pass to the pages2pdf this variable $prenotazioni,

so the user can download the pdf of the list that he filtered.

Thanks a lot

Andrea

Share this post


Link to post
Share on other sites

Hi all,

This is a brilliant module, but I have noticed something unexpected, that I hope someone can help with.

I have a text string which contains a degree symbol ( ˚ ) but for some reason the produced PDF replaces that symbol with a question mark - indicating it doesn't understand it (the same string appears fine on the html page itself).

I have made sure the string is UTF-8 encoded and I'm using the Times font when outputting the PDF.

Does anyone have any ideas why this is happening and any possible way of fixing it?

All the best,
Tony.

Share this post


Link to post
Share on other sites

Hi all,

How do you go about adding a page break to your generated PDF?

I've tried adding

<?
	$pdf = $modules->get('WirePDF');
	$pdf->AddPage();
?>

into the template file, but although it doesn't give an error when rendering the PDF, neither does it add a new page!

All help gratefully received.

Tony.

Share this post


Link to post
Share on other sites
34 minutes ago, bernhard said:

hi tony,

did you read the manual? http://www.mpdf1.com/mpdf/index.php;)

Thanks for the link Bernhard. 

I had read other online documentation, but it didn't make it clear that all you had to do was include the HTML tag <pagebreak />.
I did that and voila, a page break :)

Thanks again,

Tony.

 

  • Like 2

Share this post


Link to post
Share on other sites
On 9.7.2016 at 11:23 PM, Tony Carnell said:

I have a text string which contains a degree symbol ( ˚ ) but for some reason the produced PDF replaces that symbol with a question mark - indicating it doesn't understand it (the same string appears fine on the html page itself).

I have made sure the string is UTF-8 encoded and I'm using the Times font when outputting the PDF.

Does anyone have any ideas why this is happening and any possible way of fixing it?

Hi Tony,

Could you already solve this problem? It looks like this character is not included in the chosen font, maybe try another one? How did you output the degree symbol, hardcoded or with an entity, e.g. &deg; ?

Cheers

Share this post


Link to post
Share on other sites

Hello,

big thanks for this wonderful modul. I have here a interesting problem. If I save 2 pages with individual templates, the second page always gets the first template. I want to create an invoice and a list of items. Is there something to keep an eye on when doing such stuff? This is my code:

$rechnung = new Page();
$rechnung->template = "rechnung";
$rechnung->parent = wire('pages')->get("/rechnungen/");
$rechnung->title = "HG-".$order->id;
$rechnung->orderid = $order->id;
$rechnung->save();
$rechnung->of(false);
$mail->attachment(wire('modules')->get('Pages2Pdf')->getPDFFilePath($rechnung));
$stueckliste = new Page();
$stueckliste->template="stueckliste";
$stueckliste->parent = wire("pages")->get("/stuecklisten/");
$stueckliste->title = "HGSL-".$order->id;
$stueckliste->orderid = $order->id;
$stueckliste->save();
$stueckliste->of(false);
$mail->attachment(wire('modules')->get('Pages2Pdf')->getPDFFilePath($stueckliste));

Both templates are configured for pages2pdf and I have for both of them an template-file underneath pages2pdf. The first one use the template rechnung and the second page also uses the page rechnung. I use the newest version of pages2pdf and processwire 2.7.2 in combination with the actual release of padloper.

Has anyone here in the forum an idea howto solve this?

Thanks Henning

Share this post


Link to post
Share on other sites

Hi Henning,

Interesting approach on how to use the module :) Looks like a caching problem to me, could you try to add $this->pdf = null after this line:

https://github.com/wanze/Pages2Pdf/blob/master/Pages2Pdf.module#L218

The code should then look like the following snippet:

[...]
  } else {
    $this->create($page, true);
    $name = $this->getPDFFilename($page);
    $this->wire('session')->message(sprintf($this->_("Pages2Pdf: Created PDF file(s) '%s'"), $name));
  }
  // Add me!
  $this->pdf = null;
}

Cheers

  • Like 4

Share this post


Link to post
Share on other sites

Hi Wanze,

thank you very much for the lightning fast response. It works with this addition.

BR

Henning

Share this post


Link to post
Share on other sites

Hey thanks a million for this modul :) 

Unfortunately, I have some troubles. I've installed the modul, add the current template in the settings and tried it out. In the template file (htdocs/site/templates)  I've add this code, like in the instructions:

echo $modules->get('Pages2Pdf')->render();

But I receive always the same error. Something like "Error loading PDF-File". What's wrong? Did I forgot something? I use Processwire 3.0.29.

Thanks for your help.

PS: Sorry for my "English"

printscreen.png

Share this post


Link to post
Share on other sites

@cappuccino You're welcome, I never saw this error before. What is the content of your ProcessWire PDF template (site/templates/pages2pdf/..) that is rendered by the module? Does it work if you you just put a "Hello World" in it? If so, you'd need to simplify your markup and debug what is causing the error.

 

Cheers

Share this post


Link to post
Share on other sites

Hi!
Thanks for this great module!

This is probably easy, but I cant get it to work (Iam a PHP noob). 
I want to generate two PDfs (with different templates) from the same page.

I have two files in the pages2pdf folder under templates (expose_preisliste.php, expose_wohnung.php).
If I understand correctly I would set it up like this:

$preisliste = $modules->get('WirePDF');
$preisliste->markupMain = $config->paths->templates . 'expose_preisliste.php';
$preisliste->save('preisliste.pdf');

$wohnung = $modules->get('WirePDF');
$wohnung->markupMain = $config->paths->templates . 'expose_wohnung.php';
$wohnung->save('wohnung.pdf');

Now I want two links on the frontend to download the files.
How do I call the variable for the Link?
I want the PDFs to be generated when clicking the link.

Thx for your help!

I managed to get this working. 
 

Share this post


Link to post
Share on other sites

Now I have a new Problem.
I have several pages I just use for data storage (no template file associated).
The pages are all children of a page called "wohnen". 
The data of those pages is used on the page home.

Now I want to create a PDF from all these pages (of parent "wohnen").
To let the module know wich PDFs to generate I used a session.
In my template for generating the PDFs I have something like this:

session_start();
$wohnungsnr = $_SESSION['wohnungsnr'];
   <?php    
    $targetPage = "/$wohnungsnr/";
    $wohnung = wire('pages')->get($targetPage);
	$out = " <h1>{$targetPage}</h1> ";
   
    
        $out .="
         <div id='{$wohnungsnr}-content' class='fbox-content'>
             <div class='grid'>
                <h1 class='size1of1'>{$wohnung->headline}</h1>
        ";
		 foreach ($wohnung->grundrisse as $grundriss) {
 $out .=  "<img class='size1of3' src='{$grundriss->url}'>";
};
        $out .= 
            "
            <div class='size1of3 wohnung-content'>
            <table>
            <tr>
                            <th>Wohnungstyp</th>
                            <th>Etage</th>
                        </tr>
                        <tr>
                            <td>{$wohnung->options_zimmer->title} Zimmer</td>
                            <td>{$wohnung->options_etage->title}</td>
                        </tr>
                        <tr>
                            <th>Grösse</th>
                            <th>Kaufpreis</th>
                        </tr>
                        <tr>
                            <td>{$wohnung->size}</td>
                            <td>{$wohnung->preis}</td>
                        </tr>
                        <tr>
                        <th colspan='2'>Ausstattung</th>
                        </tr>
                        <tr>
                            <td colspan='2'>
                                <ul>
            ";
        foreach ($wohnung->ausstattung_repeater as $item) {
            
            $out .= " 
                                    <li>– {$item->headline}</li>
                                ";
        }
        $out .= "</ul>
                            </td>
                        </tr>
            </table>
            
            </div>
             </div>
            </div> ";
	echo "{$out}";
    ?>


<?php include("_footer.php"); ?>

On the page home I have a function that shows all the data from the children of  the"wohnen" page with a download button for every page. My Idea was to change the session variable on click of the download buttton to let the pdf template know wich page to render.
Any Ideas how this works?


You can delete this post I figured it out.
I send the variable with the URL like this:

<a href='$page->url?pages2pdf=1&wohnungsnr={$wohnung->title}' class='button' id='{$wohnung->title}'><img src='http://projekte.janploch.de/fabricius/site/templates/img/icon-download.svg' class='button-icon'>Download Exposé</a>


 

Share this post


Link to post
Share on other sites

Hello,

I'm struggling with this : a 504 Gateway Timeout when generating my PDF.

I used to be able to generate a particular PDF listing 52 places with a photo  (small), a little text and a few pieces of information for each in a table. It worked and I had a PDF of about 350Ko.

Now, I'm trying to generate a PDF of about 250Kos and I get the 504 error. I've tried to re-generate my places catalogue and again, I have the 504 error.

All my templates work fine (although it takes a little while) to generate smaller PDF files.

The page I'm trying to generate is : http://planetalert.tuxfamily.org/players/4e/amandine

If someone have advice on how I could find my way out of this, I'd greatly appreciate ;)

Thanks !

Share this post


Link to post
Share on other sites

I want to let it work with PHP7. I get this error message:

Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; mPDF has a deprecated constructor in /site/modules/Pages2Pdf/mpdf/mpdf.php on line 66 Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; grad has a deprecated constructor

/site/modules/Pages2Pdf/mpdf/classes/grad.php on line 3 Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; form has a deprecated constructor in /site/modules/Pages2Pdf/mpdf/classes/form.php on line 3 Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; cssmgr has a deprecated constructor in /site/modules/Pages2Pdf/mpdf/classes/cssmgr.php on line 3 %PDF-1.4 % 3 0 obj <> /Contents 4 0 R>> endobj 4 0 obj <> stream xOO0\IhN=bZW$~wi+(\ `'l4cm=@Κ|҃7X(c)qe8嶴~wuxj=ϭ; Gۗ}q؃E k4FX"%7_Y`Id-#US,qڪQ!)$5|LJO(qiuYvr]ǿbnsP\\ Ґb,ߞymAM*{Hv6EÞy{(ŵjV/M x98F&P{y=+^mKi߀&mKU^0}Y֊';#lKO)]Iҍ,<_216=q0 endstream endobj 1 0 obj <> endobj 5 0 obj <> endobj 6 0 obj <> endobj 7 0 obj <> endobj 8 0 obj <> endobj 9 0 obj <> endobj 2 0 obj <> /ExtGState << /GS1 5 0 R >> >> endobj 10 0 obj << /Producer (mPDF 5.7.4) /CreationDate (20160904200643+02'00') /ModDate (20160904200643+02'00') >> endobj 11 0 obj << /Type /Catalog /Pages 1 0 R /OpenAction [3 0 R /XYZ null null 1] /PageLayout /OneColumn >> endobj xref 0 12 0000000000 65535 f 0000000713 00000 n 0000001255 00000 n 0000000015 00000 n 0000000223 00000 n 0000000802 00000 n 0000000863 00000 n 0000000959 00000 n 0000001060 00000 n 0000001158 00000 n 0000001401 00000 n 0000001529 00000 n trailer << /Size 12 /Root 11 0 R /Info 10 0 R /ID [<3df5fdeb256069fc900acdab6c3ab3f0> <3df5fdeb256069fc900acdab6c3ab3f0>] >> startxref 1639 %%EOF

Any hints?

Thanks!

Share this post


Link to post
Share on other sites

@hheyne @Wanze

I'm hitting the same problem with this module. PW3.0.36 and PHP7. Even though they are only notices, this seems to stop the PDF file from being correctly generated (at least, for me.)

Is the mPdf project still being maintained? I wonder if a patch is in the works for this?

Share this post


Link to post
Share on other sites

The latest version of mPDF (7.0.0) already supports PHP 7, so it should be just a matter of pulling the latest sources into the module (unless there were breaking changes since 5.7).

  • Like 1

Share this post


Link to post
Share on other sites

Hi everyone,

I've just installed this module and it works lovely. However I am unsure as to a few things. I would like to call my original css files "main.css" in my templates folder to use on the pdf. As of now it doesn't seem to load any CSS. I added some inline-styles to the files in the "pages2pdf" folder and they did not seem to load.

Reading the module files I see the below. Though I am unsure what the difference between the two CSS option are. Also I'm unsure as to what I put in them. Where do I start the path? etc. I apologize for my ignorance of PHP and PW.

protected static $config = array(
        'markupMain' => '',
        'markupHeader' => '',
        'markupFooter' => '',
        'mode' => 'c',
        'pageOrientation' => 'P',
        'pageFormat' => 'A4',
        'topMargin' => 30,
        'rightMargin' => 15,
        'bottomMargin' => 20,
        'leftMargin' => 15,
        'headerMargin' => 5,
        'footerMargin' => 10,
        'font' => 'Helvetica',
        'fontSize' => 12,
        'author' => '',
        'headerFirstPage' => 1,
        'cssFile' => '', //this one 
        'css' => '', //and this one
    );

Also is there a way to remove the auto generated header and footer that the pdf seems to generate. The ones that says "default header..." "...created with processwire and pages2pdf..." as well as the header and footer for the website (the one I made). I get seem to get both some times and sometimes not.

Finally some of my images don't appear to load. I've read that there are issues with background-images, but this is just a regular image element. 

Note: I have deactivated the header and footer settings in the back-end module settings but I still get the default head/foot, infact everything I change does not appear to have anything effect, even changing from portrait to landscape; it will still come out portrait.

Any help is much appreciated.

Thanks,

Matt

Share this post


Link to post
Share on other sites

@Matt_P

It sounds like you always get a cached PDF. Try enabling the debug mode or change the cache time to "0" in the Pages2Pdf, then you should actually see your settings taking place. As for the image, can you share your code? Be aware that CSS support is limited when rendering the PDF, that's why you should load a separate CSS file containing the styles just for the PDF's.

Cheers

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Gadgetto
      SnipWire - Snipcart integration for ProcessWire
      Snipcart is a powerful 3rd party, developer-first HTML/JavaScript shopping cart platform. SnipWire is the missing link between Snipcart and the content management framework ProcessWire.
      With SnipWire, you can quickly turn any ProcessWire site into a Snipcart online shop. The SnipWire plugin helps you to get your store up and running in no time. Detailed knowledge of the Snipcart system is not required.
      SnipWire is free and open source licensed under Mozilla Public License 2.0! A lot of work and effort has gone into development. It would be nice if you could donate an amount to support further development:

      Status update links (inside this thread) for SnipWire development
      2020-01-21 -- Snipcart v3 - when will the new cart system be implemented? 2020-01-19 -- integrated taxes provider finished (+ very flexible shipping taxes handling) 2020-01-14 -- new date range picker, discount editor, order notifiactions, order statuses, and more ... 2019-11-15 -- orders filter, order details, download + resend invoices, refunds 2019-10-18 -- list filters, REST API improvements, new docs platform, and more ... 2019-08-08 -- dashboard interface, currency selector, managing Orders, Customers and Products, Added a WireTabs, refinded caching behavior 2019-06-15 -- taxes provider, shop templates update, multiCURL implementation, and more ... 2019-06-02 -- FieldtypeSnipWireTaxSelector 2019-05-25 -- SnipWire will be free and open source Plugin Key Features
      Fast and simple store setup Full integration of the Snipcart dashboard into the ProcessWire backend (no need to leave the ProcessWire admin area) Browse and manage orders, customers, discounts, abandoned carts, and more Process refunds and send customer notifications from within the ProcessWire backend Complete Snipcart webhooks integration (all events are hookable via ProcessWire hooks) Integrated taxes provider (which is more flexible then Snipcart own provider) Useful Links
      SnipWire in PW modules directory (alpha version only available via GitHub) SnipWire Docs (please note that the documentation is a work in progress) SnipWire @GitHub (feature requests and suggestions for improvement are welcome - I also accept pull requests) Snipcart Website  
      ---- INITIAL POST FROM 2019-05-25 ----
       
    • By d'Hinnisdaël
      Happy new year, everybody 🥬
      I've been sitting on this Dashboard module I made for a client and finally came around to cleaning it up and releasing it to the wider public. This is how it looks.
      ProcessWire Dashboard

      If anyone is interested in trying this out, please go ahead! I'd love to get some feedback on it. If this proves useful and survives some real-world testing, I'll add this to the module directory.
      Download
      You can find the latest release on Github.
      Documentation
      Check out the documentation to get started. This is where you'll find information about included panel types and configuration options.
      Custom Panels
      My goal was to make it really simple to create custom panels. The easiest way to do that is to use the panel type template and have it render a file in your templates folder. This might be enough for 80% of all use cases. For anything more complex (FormBuilder submissions? Comments? Live chat?), you can add new panel types by creating modules that extend the DashboardPanel base class. Check out the documentation on custom panels or take a look at the HelloWorld panel to get started. I'm happy to merge any user-created modules into the main repo if they might be useful to more than a few people.
       Disclaimer
      This is a pre-release version. Please treat it as such — don't install it on production sites. Just making sure 🍇
      Roadmap
      These are the things I'm looking to implement myself at some point. The wishlist is a lot longer, but those are the 80/20 items that I probably won't regret spending time on.
      Improve documentation & add examples ⚙️ Panel types Google Analytics ⚙️ Add new page  🔥 Drafts 🔥 At a glance / Page counter 404s  Layout options Render multiple tabs per panel panel groups with heading and spacing between ✅ panel wrappers as grid item (e.g. stacked notices) ✅ Admin themes support AdminThemeReno and AdminThemeDefault ✅ Shortcuts panel add a table layout with icon, title & summary ✅ Chart panel add default styles for common chart types ✅ load chart data from JS file (currently passed as PHP array) Collection panel support image columns ✅ add buttons: view all & add new ✅
    • By Robin S
      This module is inspired by and similar to the Template Stubs module. The author of that module has not been active in the PW community for several years now and parts of the code for that module didn't make sense to me, so I decided to create my own module. Auto Template Stubs has only been tested with PhpStorm because that is the IDE that I use.
      Auto Template Stubs
      Automatically creates stub files for templates when fields or fieldgroups are saved.
      Stub files are useful if you are using an IDE (e.g. PhpStorm) that provides code assistance - the stub files let the IDE know what fields exist in each template and what data type each field returns. Depending on your IDE's features you get benefits such as code completion for field names as you type, type inference, inspection, documentation, etc.
      Installation
      Install the Auto Template Stubs module.
      Configuration
      You can change the class name prefix setting in the module config if you like. It's good to use a class name prefix because it reduces the chance that the class name will clash with an existing class name.
      The directory path used to store the stub files is configurable.
      There is a checkbox to manually trigger the regeneration of all stub files if needed.
      Usage
      Add a line near the top of each of your template files to tell your IDE what stub class name to associate with the $page variable within the template file. For example, with the default class name prefix you would add the following line at the top of the home.php template file:
      /** @var tpl_home $page */ Now enjoy code completion, etc, in your IDE.

      Adding data types for non-core Fieldtype modules
      The module includes the data types returned by all the core Fieldtype modules. If you want to add data types returned by one or more non-core Fieldtype modules then you can hook the AutoTemplateStubs::getReturnTypes() method. For example, in /site/ready.php:
      // Add data types for some non-core Fieldtype modules $wire->addHookAfter('AutoTemplateStubs::getReturnTypes', function(HookEvent $event) { $extra_types = [ 'FieldtypeDecimal' => 'string', 'FieldtypeLeafletMapMarker' => 'LeafletMapMarker', 'FieldtypeRepeaterMatrix' => 'RepeaterMatrixPageArray', 'FieldtypeTable' => 'TableRows', ]; $event->return = $event->return + $extra_types; }); Credits
      Inspired by and much credit to the Template Stubs module by mindplay.dk.
       
      https://github.com/Toutouwai/AutoTemplateStubs
      https://modules.processwire.com/modules/auto-template-stubs/
    • By Mike Rockett
      Jumplinks for ProcessWire
      Release: 1.5.60
      Composer: rockett/jumplinks
      ⚠️ NOTICE: 1.5.60 is an important security patch-release for an XSS vulnerability discovered by @phlp. It's HIGHLY RECOMMENDED that all Jumplinks users update to the latest version as soon as possible.
      Jumplinks is an enhanced version of the original ProcessRedirects by Antti Peisa.
      The Process module manages your permanent and temporary redirects (we'll call these "jumplinks" from now on, unless in reference to redirects from another module), useful for when you're migrating over to ProcessWire from another system/platform. Each jumplink supports wildcards, shortening the time needed to create them.
      Unlike similar modules for other platforms, wildcards in Jumplinks are much easier to work with, as Regular Expressions are not fully exposed. Instead, parameters wrapped in curly braces are used - these are described in the documentation.
      Under Development: 2.0, to be powered by FastRoute
      As of version 1.5.0, Jumplinks requires at least ProcessWire 2.6.1 to run.
      View on GitLab
      Download via the Modules Directory
      Read the docs
      Features
      The most prominent features include:
      Basic jumplinks (from one fixed route to another) Parameter-based wildcards with "Smart" equivalents Mapping Collections (for converting ID-based routes to their named-equivalents without the need to create multiple jumplinks) Destination Selectors (for finding and redirecting to pages containing legacy location information) Timed Activation (activate and/or deactivate jumplinks at specific times) 404-Monitor (for creating jumplinks based on 404 hits) Additionally, the following features may come in handy:
      Stale jumplink management Legacy domain support for slow migrations An importer (from CSV or ProcessRedirects) Feedback & Feature Requests
      I’d love to know what you think of this module. Please provide some feedback on the module as a whole, or even regarding smaller things that make it whole. Also, please feel free to submit feature requests and their use-cases.
      Note: Features requested so far have been added to the to-do list, and will be added to 2.0, and not the current dev/master branches.
      Open Source

      Jumplinks is an open-source project, and is free to use. In fact, Jumplinks will always be open-source, and will always remain free to use. Forever. If you would like to support the development of Jumplinks, please consider making a small donation via PayPal.
      Enjoy! 🙂
    • By Robin S
      Add Image URLs
      Allows images/files to be added to Image/File fields by pasting URLs.

      Usage
      Install the Add Image URLs module.
      A "Paste URLs" button will be added to all image and file fields. Use the button to show a textarea where URLs may be pasted, one per line. Images/files are added when the page is saved.
       
      https://github.com/Toutouwai/AddImageUrls
      https://modules.processwire.com/modules/add-image-urls/
×
×
  • Create New...