Can someone tell me if either of these two methods has an advantage over the other and why?
$mydir = ABSPATH.'/wp-content/themes/mytheme/images';
$mydir = dirname(__FILE__).'/images';
They can both be used to obtain and absolute path to the images directory of "mytheme" regardless of structure of whether wordpress is installed on the root directory or in a subdirectory off the root. In both cases, they are being called from the functions.php file which is located under the "mytheme" folder.
I would personally prefer
dirname() as it is always guaranteed to give me the correct result, while the ABSPATH method relies on a fixed theme path and theme name that can both change.
By the way, you can use
__DIR__ instead of
ABSPATH) is not recommended. See the Determining Plugin and Content Directories WordPress Codex article.
Since PHP 4.0.2, symlinks are being resolved for the
__DIR__ magic constants, so take that into account.
Bottom line: To determine the absolute path to a theme directory, I would suggest to use the
get_template_directory() function which also applies filters and internally combines