On Wed, 3 Nov 2010 17:59:06 +0800, David Nelson <comme...@traduction.biz> wrote:
Hi, :-)

I'm making a child theme for WordPress. I need to rewrite one function defined in "../sometheme/functions/actions.php" and put that rewritten function in "wp-content/themes/sometheme-child/functions/actions.php".

But I want to preserve "../sometheme/functions/actions.php" unchanged
in any way. (Future theme updates would just overwrite any changes I
made.)

So, in my new "actions.php", I put an include followed by the
replacement function definition, named identically to the one I want
to replace:

<?php

include '../sometheme/functions/actions.php';

function foo($arg_1, $arg_2, /* ..., */ $arg_n)
{
    echo "All my new code.\n";
}

?>

Because this duplicate foo() function definition comes after the foo()
defined in the included file, does it replace the included foo()?

Or how can I achieve what I want?

Big thanks in advance for any suggestions. :-)

David

As far as I know it is not possible to overwrite functions in PHP (unless you use runkit, apd). Inside classes this is possible. But that's not the case here. Why do the functions have to be equally named?

Try to create a new function and call the original function from there if needed...

foo2() {
foo()
}


--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to